import MarkdownEditor from './src/markdown-editor.vue';
import MarkdownPreviewer from './src/components/markdown-previewer.vue';
export declare const LlMarkdownEditor: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    readonly value: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, () => "", boolean>;
    readonly compress: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, () => true, boolean>;
    readonly uploadImage: import("ll-plus/es/utils").EpPropFinalized<FunctionConstructor, unknown, unknown, (files: any) => any, boolean>;
    readonly imageQuality: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
    readonly mode: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "split" | "auto" | "tab", unknown, "auto", boolean>;
}>, {
    pluginsList: import("bytemd").BytemdPlugin[];
    props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
        readonly value: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, () => "", boolean>;
        readonly compress: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, () => true, boolean>;
        readonly uploadImage: import("ll-plus/es/utils").EpPropFinalized<FunctionConstructor, unknown, unknown, (files: any) => any, boolean>;
        readonly imageQuality: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
        readonly mode: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "split" | "auto" | "tab", unknown, "auto", boolean>;
    }>> & Readonly<{
        onChange?: (value: string) => any;
        "onUpdate:value"?: (value: string) => any;
    }> & {}>;
    emits: ((event: "change", value: string) => void) & ((event: "update:value", value: string) => void);
    bem: {
        b: (blockSuffix?: string) => string;
        e: (element?: string) => string;
        m: (modifier?: string) => string;
        be: (blockSuffix?: string, element?: string) => string;
        em: (element: string, modifier: string) => string;
        bm: (blockSuffix: string, modifier: string) => string;
        bem: (blockSuffix: string, element: string, modifier: string) => string;
        is: (name?: string) => string;
    };
    components: any[];
    markDownRef: import("vue").Ref<any, any>;
    innerValue: import("vue").Ref<string, string>;
    plugins: import("vue").Raw<import("bytemd").BytemdPlugin[]>;
    zh: import("vue").Ref<{
        bold: string;
        boldText: string;
        cheatsheet: string;
        closeHelp: string;
        closeToc: string;
        code: string;
        codeBlock: string;
        codeLang: string;
        codeText: string;
        exitFullscreen: string;
        exitPreviewOnly: string;
        exitWriteOnly: string;
        fullscreen: string;
        h1: string;
        h2: string;
        h3: string;
        h4: string;
        h5: string;
        h6: string;
        headingText: string;
        help: string;
        hr: string;
        image: string;
        imageAlt: string;
        imageTitle: string;
        italic: string;
        italicText: string;
        limited: string;
        lines: string;
        link: string;
        linkText: string;
        ol: string;
        olItem: string;
        preview: string;
        previewOnly: string;
        quote: string;
        quotedText: string;
        shortcuts: string;
        source: string;
        sync: string;
        toc: string;
        top: string;
        ul: string;
        ulItem: string;
        words: string;
        write: string;
        writeOnly: string;
    }, {
        bold: string;
        boldText: string;
        cheatsheet: string;
        closeHelp: string;
        closeToc: string;
        code: string;
        codeBlock: string;
        codeLang: string;
        codeText: string;
        exitFullscreen: string;
        exitPreviewOnly: string;
        exitWriteOnly: string;
        fullscreen: string;
        h1: string;
        h2: string;
        h3: string;
        h4: string;
        h5: string;
        h6: string;
        headingText: string;
        help: string;
        hr: string;
        image: string;
        imageAlt: string;
        imageTitle: string;
        italic: string;
        italicText: string;
        limited: string;
        lines: string;
        link: string;
        linkText: string;
        ol: string;
        olItem: string;
        preview: string;
        previewOnly: string;
        quote: string;
        quotedText: string;
        shortcuts: string;
        source: string;
        sync: string;
        toc: string;
        top: string;
        ul: string;
        ulItem: string;
        words: string;
        write: string;
        writeOnly: string;
    } | {
        bold: string;
        boldText: string;
        cheatsheet: string;
        closeHelp: string;
        closeToc: string;
        code: string;
        codeBlock: string;
        codeLang: string;
        codeText: string;
        exitFullscreen: string;
        exitPreviewOnly: string;
        exitWriteOnly: string;
        fullscreen: string;
        h1: string;
        h2: string;
        h3: string;
        h4: string;
        h5: string;
        h6: string;
        headingText: string;
        help: string;
        hr: string;
        image: string;
        imageAlt: string;
        imageTitle: string;
        italic: string;
        italicText: string;
        limited: string;
        lines: string;
        link: string;
        linkText: string;
        ol: string;
        olItem: string;
        preview: string;
        previewOnly: string;
        quote: string;
        quotedText: string;
        shortcuts: string;
        source: string;
        sync: string;
        toc: string;
        top: string;
        ul: string;
        ulItem: string;
        words: string;
        write: string;
        writeOnly: string;
    }>;
    attrs: import("vue").Attrs;
    handleChange: (val: string) => Promise<void>;
    compressImage: (file: any) => Promise<unknown>;
    handleUploadImages: (files: File[]) => Promise<any>;
    sanitize: (schema: any) => any;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    change: (value: string) => boolean;
    'update:value': (value: string) => boolean;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    readonly value: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, () => "", boolean>;
    readonly compress: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, () => true, boolean>;
    readonly uploadImage: import("ll-plus/es/utils").EpPropFinalized<FunctionConstructor, unknown, unknown, (files: any) => any, boolean>;
    readonly imageQuality: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
    readonly mode: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "split" | "auto" | "tab", unknown, "auto", boolean>;
}>> & Readonly<{
    onChange?: (value: string) => any;
    "onUpdate:value"?: (value: string) => any;
}>, {
    readonly mode: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "split" | "auto" | "tab", unknown>;
    readonly value: string;
    readonly compress: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
    readonly uploadImage: Function;
    readonly imageQuality: Record<string, any>;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
export declare const LlMarkdownPreviewer: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    readonly value: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, () => "", boolean>;
    readonly showCatalog: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
}>, {
    props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
        readonly value: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, () => "", boolean>;
        readonly showCatalog: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    }>> & Readonly<{}> & {}>;
    MarkdownViewer: any;
    markDownRef: import("vue").Ref<any, any>;
    viewerContainer: import("vue").Ref<any, any>;
    bem: {
        b: (blockSuffix?: string) => string;
        e: (element?: string) => string;
        m: (modifier?: string) => string;
        be: (blockSuffix?: string, element?: string) => string;
        em: (element: string, modifier: string) => string;
        bm: (blockSuffix: string, modifier: string) => string;
        bem: (blockSuffix: string, element: string, modifier: string) => string;
        is: (name?: string) => string;
    };
    pluginsList: import("bytemd").BytemdPlugin[];
    state: {
        plugins: import("vue").Raw<import("bytemd").BytemdPlugin[]>;
        zh: {
            bold: string;
            boldText: string;
            cheatsheet: string;
            closeHelp: string;
            closeToc: string;
            code: string;
            codeBlock: string;
            codeLang: string;
            codeText: string;
            exitFullscreen: string;
            exitPreviewOnly: string;
            exitWriteOnly: string;
            fullscreen: string;
            h1: string;
            h2: string;
            h3: string;
            h4: string;
            h5: string;
            h6: string;
            headingText: string;
            help: string;
            hr: string;
            image: string;
            imageAlt: string;
            imageTitle: string;
            italic: string;
            italicText: string;
            limited: string;
            lines: string;
            link: string;
            linkText: string;
            ol: string;
            olItem: string;
            preview: string;
            previewOnly: string;
            quote: string;
            quotedText: string;
            shortcuts: string;
            source: string;
            sync: string;
            toc: string;
            top: string;
            ul: string;
            ulItem: string;
            words: string;
            write: string;
            writeOnly: string;
        };
        cateList: {
            tagName: string;
            text: string;
        }[];
        anchor: number;
        scrollContainer: Element;
        isManualScrolling: boolean;
        headingElements: {
            element: Element;
            index: number;
            offsetTop: number;
        }[];
    };
    anchor: import("vue").Ref<number, number>;
    plugins: import("vue").Ref<import("vue").Raw<import("bytemd").BytemdPlugin[]>, import("vue").Raw<import("bytemd").BytemdPlugin[]>>;
    zh: import("vue").Ref<{
        bold: string;
        boldText: string;
        cheatsheet: string;
        closeHelp: string;
        closeToc: string;
        code: string;
        codeBlock: string;
        codeLang: string;
        codeText: string;
        exitFullscreen: string;
        exitPreviewOnly: string;
        exitWriteOnly: string;
        fullscreen: string;
        h1: string;
        h2: string;
        h3: string;
        h4: string;
        h5: string;
        h6: string;
        headingText: string;
        help: string;
        hr: string;
        image: string;
        imageAlt: string;
        imageTitle: string;
        italic: string;
        italicText: string;
        limited: string;
        lines: string;
        link: string;
        linkText: string;
        ol: string;
        olItem: string;
        preview: string;
        previewOnly: string;
        quote: string;
        quotedText: string;
        shortcuts: string;
        source: string;
        sync: string;
        toc: string;
        top: string;
        ul: string;
        ulItem: string;
        words: string;
        write: string;
        writeOnly: string;
    }, {
        bold: string;
        boldText: string;
        cheatsheet: string;
        closeHelp: string;
        closeToc: string;
        code: string;
        codeBlock: string;
        codeLang: string;
        codeText: string;
        exitFullscreen: string;
        exitPreviewOnly: string;
        exitWriteOnly: string;
        fullscreen: string;
        h1: string;
        h2: string;
        h3: string;
        h4: string;
        h5: string;
        h6: string;
        headingText: string;
        help: string;
        hr: string;
        image: string;
        imageAlt: string;
        imageTitle: string;
        italic: string;
        italicText: string;
        limited: string;
        lines: string;
        link: string;
        linkText: string;
        ol: string;
        olItem: string;
        preview: string;
        previewOnly: string;
        quote: string;
        quotedText: string;
        shortcuts: string;
        source: string;
        sync: string;
        toc: string;
        top: string;
        ul: string;
        ulItem: string;
        words: string;
        write: string;
        writeOnly: string;
    }>;
    cateList: import("vue").Ref<{
        tagName: string;
        text: string;
    }[], {
        tagName: string;
        text: string;
    }[]>;
    currentValue: import("vue").ComputedRef<string>;
    getCataLogData: () => void;
    createCataLog: (tree: any) => void;
    stringifyHeading: (node: any) => string;
    transformToId: () => void;
    scrollToSection: (sectionId: string, index: number) => void;
    getScrollContainer: () => Element;
    cacheHeadingElements: () => void;
    updateHeadingPositions: () => void;
    handleScrollOptimized: import("lodash").DebouncedFuncLeading<() => void>;
    debouncedUpdatePositions: import("lodash").DebouncedFunc<() => void>;
    handleResize: import("lodash").DebouncedFunc<() => void>;
    cleanup: () => void;
    initScrollListener: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    readonly value: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, () => "", boolean>;
    readonly showCatalog: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
}>> & Readonly<{}>, {
    readonly value: string;
    readonly showCatalog: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
export * from './src/config';
declare module 'vue' {
    interface GlobalComponents {
        LlMarkdownEditor: typeof MarkdownEditor;
        LlMarkdownPreviewer: typeof MarkdownPreviewer;
    }
}
