import type { Highlighter, HighlightDecoration } from '../core.js';
export type CodeFenceInput = {
    code: string;
    decorations?: ReadonlyArray<HighlightDecoration>;
    lang?: string | null;
    lineNumbers?: boolean;
    meta?: string | null;
    title?: string | null;
};
export type CodeFenceMeta = {
    decorations: Array<HighlightDecoration>;
    lineNumbers: boolean;
    title?: string;
};
export declare function parseCodeDiffNotation(code: string): {
    code: string;
    decorations: HighlightDecoration[];
};
export declare function parseCodeFenceMeta(meta?: string | null): CodeFenceMeta;
export declare function getCodeFenceTitle(meta?: string | null): string | undefined;
export declare function prepareCodeFence({ code, decorations, lang, lineNumbers, meta, title, }: CodeFenceInput): {
    code: string;
    decorations: HighlightDecoration[];
    lang: string | undefined;
    lineNumbers: boolean;
    title: string | undefined;
};
export declare function tokenizeCodeFence(input: CodeFenceInput, highlighter: Highlighter): {
    code: string;
    lang: string;
    tokens: Array<import("../core.js").HighlightToken>;
    decorations: HighlightDecoration[];
    lineNumbers: boolean;
    title: string | undefined;
};
