import { type SchemaToModel } from '@blockeditor/store';
import type { Highlighter, Lang } from 'shiki';
export declare const CodeBlockSchema: {
    version: number;
    model: {
        role: "root" | "hub" | "content";
        props: import("@blockeditor/store").PropsGetter<{
            text: import("@blockeditor/store").Text;
            language: string;
        }>;
        flavour: "affine:code";
    } & {
        version: number;
        role: "content";
        parent: string[];
        children: never[];
    };
    onUpgrade?: ((data: {
        text: import("@blockeditor/store").Text;
        language: string;
    }, previousVersion: number, latestVersion: number) => void) | undefined;
    transformer?: (() => import("@blockeditor/store").BaseBlockTransformer<{
        text: import("@blockeditor/store").Text;
        language: string;
    }>) | undefined;
};
export type CodeBlockModel = SchemaToModel<typeof CodeBlockSchema>;
export type HighlightOptionsGetter = (() => {
    lang: Lang;
    highlighter: Highlighter | null;
}) | null;
//# sourceMappingURL=code-model.d.ts.map