import { DOMConversionMap, DOMConversionOutput, DOMExportOutput, EditorConfig, ElementNode, LexicalEditor, LexicalNode, RangeSelection, SerializedElementNode } from 'lexical';
type SerializedCollapsibleTitleNode = SerializedElementNode;
export declare function convertSummaryElement(domNode: HTMLElement): DOMConversionOutput | null;
/**
 * A Lexical node to represent an HTML summary element
 */
export declare class CollapsibleTitleNode extends ElementNode {
    static getType(): string;
    static clone(node: CollapsibleTitleNode): CollapsibleTitleNode;
    createDOM(config: EditorConfig, editor: LexicalEditor): HTMLElement;
    updateDOM(prevNode: CollapsibleTitleNode, dom: HTMLElement): boolean;
    static importDOM(): DOMConversionMap | null;
    static importJSON(serializedNode: SerializedCollapsibleTitleNode): CollapsibleTitleNode;
    exportDOM(): DOMExportOutput;
    exportJSON(): SerializedCollapsibleTitleNode;
    collapseAtStart(_selection: RangeSelection): boolean;
    insertNewAfter(_: RangeSelection, restoreSelection?: boolean): ElementNode;
}
/**
 * Creates a Collapsible Title node
 *
 * @returns A Collapsible Title node
 */
export declare function $createCollapsibleTitleNode(): CollapsibleTitleNode;
/**
 * A typeguard function to assert on a Collapsible Title node
 *
 * @param node A Lexical node
 * @returns true if the node is a Collapsible Title node, otherwise false
 */
export declare function $isCollapsibleTitleNode(node: LexicalNode | null | undefined): node is CollapsibleTitleNode;
export {};
