import type { Engine } from '../..';
import type { DefineComponent, Ref, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes } from 'vue';
import { editor as monacoEditor } from 'monaco-editor';
export interface Props {
    lang?: string;
    modelValue?: string;
    options?: monacoEditor.IEditorConstructionOptions;
    height?: string;
    readonly?: boolean;
    dark?: boolean;
    border?: boolean;
    minimap?: boolean;
    workers?: Record<string, any>;
}
declare const _sfc_main: DefineComponent<{
    lang: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    modelValue: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    options: {
        type: null;
        required: false;
        default: () => {};
    };
    height: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    readonly: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    dark: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    border: {
        type: BooleanConstructor;
        required: false;
    };
    minimap: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    workers: {
        type: ObjectConstructor;
        required: false;
    };
}, {
    props: {
        lang: string;
        modelValue: string;
        options: monacoEditor.IEditorConstructionOptions;
        height: string;
        readonly: boolean;
        dark: boolean;
        border?: boolean | undefined;
        minimap: boolean;
        workers?: Record<string, any> | undefined;
    };
    engine: Engine;
    emit: (event: "blur" | "change", ...args: any[]) => void;
    container: Ref<any>;
    editor: null;
    handleBlur: () => void;
    createEditor: () => void;
    getEditor: () => monacoEditor.IStandaloneCodeEditor | null;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("blur" | "change")[], "blur" | "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
    lang: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    modelValue: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    options: {
        type: null;
        required: false;
        default: () => {};
    };
    height: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    readonly: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    dark: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    border: {
        type: BooleanConstructor;
        required: false;
    };
    minimap: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    workers: {
        type: ObjectConstructor;
        required: false;
    };
}>> & {
    onBlur?: ((...args: any[]) => any) | undefined;
    onChange?: ((...args: any[]) => any) | undefined;
}, {
    height: string;
    dark: boolean;
    modelValue: string;
    readonly: boolean;
    border: boolean;
    lang: string;
    options: any;
    minimap: boolean;
}>;
export default _sfc_main;
