import { Editor } from 'zh-tinymce';
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
export interface UploadCallback {
    (file: File, progress?: (percent: number) => void): Promise<string>;
}
interface Props {
    modelValue?: string;
    height?: string | number;
    width?: string | number;
    disabled?: boolean;
    placeholder?: string;
    plugins?: string | string[];
    toolbar?: string | string[];
    menubar?: string | boolean;
    licenseKey?: string;
    language?: string;
    onImageUpload?: UploadCallback;
    onFileUpload?: UploadCallback;
    onVideoUpload?: UploadCallback;
    customInit?: Record<string, any>;
}
declare const _default: DefineComponent<Props, {
    getEditor: () => Editor | null;
    setContent: (content: string) => void | undefined;
    getContent: () => string;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    "update:modelValue": (value: string) => any;
    init: (editor: Editor) => any;
}, string, PublicProps, Readonly<Props> & Readonly<{
    "onUpdate:modelValue"?: ((value: string) => any) | undefined;
    onInit?: ((editor: Editor) => any) | undefined;
}>, {
    disabled: boolean;
    height: string | number;
    width: string | number;
    menubar: string | boolean;
    toolbar: string | string[];
    modelValue: string;
    placeholder: string;
    plugins: string | string[];
    language: string;
    customInit: Record<string, any>;
    licenseKey: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
export default _default;
