import { type DecoratorNodeData, type DecoratorNodeValueMap } from '../../generate-decorator-node.js';
declare const codeBlockProperties: readonly [{
    readonly name: "code";
    readonly default: "";
    readonly wordCount: true;
}, {
    readonly name: "language";
    readonly default: "";
}, {
    readonly name: "caption";
    readonly default: "";
    readonly urlType: "html";
    readonly wordCount: true;
}];
export type CodeBlockData = DecoratorNodeData<typeof codeBlockProperties>;
export interface CodeBlockNode extends DecoratorNodeValueMap<typeof codeBlockProperties> {
}
declare const CodeBlockNode_base: import("../../generate-decorator-node.js").GeneratedDecoratorNodeClass<{
    code: string;
    language: string;
    caption: string;
}, import("../../utils/render-empty-container.js").EmptyContainerOutput | {
    element: HTMLElement;
    type: "outer";
}>;
export declare class CodeBlockNode extends CodeBlockNode_base {
    static importDOM(): {
        figure: (nodeElem: HTMLElement) => {
            conversion(domNode: HTMLElement): {
                node: import("lexical/LexicalNode.js").LexicalNode;
            } | null;
            priority: 2;
        } | null;
        pre: () => {
            conversion(domNode: HTMLElement): {
                node: import("lexical/LexicalNode.js").LexicalNode;
            } | null;
            priority: 1;
        };
    };
    isEmpty(): boolean;
}
export declare function $createCodeBlockNode(dataset?: CodeBlockData): CodeBlockNode;
export declare function $isCodeBlockNode(node: unknown): node is CodeBlockNode;
export {};
//# sourceMappingURL=CodeBlockNode.d.ts.map