import { BlockModel } from '@vtj/core';
import { Context } from '@vtj/renderer';
import { ComponentInternalInstance, VNode, RendererNode, RendererElement, VNodeProps, AllowedComponentProps, ComponentCustomProps, Slot, ComponentPublicInstance, ComponentOptionsBase, ExtractPropTypes, PropType, ComputedRef, Ref, ComponentOptionsMixin, GlobalComponents, GlobalDirectives, ComponentProvideOptions, DebuggerEvent, WatchOptions, WatchStopHandle, ShallowUnwrapRef, ComponentCustomProperties, nextTick, CreateComponentPublicInstanceWithMixins, PublicProps, DefineComponent } from 'vue';
import { BuiltinFieldEditorType, BaseSize, FieldOption, FieldOptionsLoader, FieldEditorProps } from '@vtj/ui';
import { ElTooltipProps, FormItemProp, FormItemRule, FormValidateCallback, FormValidationResult } from 'element-plus';
import { EpPropMergeType, EpPropFinalized } from 'element-plus/es/utils/index.mjs';
import { Arrayable } from 'element-plus/es/utils/typescript.mjs';
import { OnCleanup } from '@vue/reactivity';
import { Props } from '../../editor/Editor';
export interface Props {
    context: Context | null;
    current: BlockModel | null;
    title: string;
    nameLabel: string;
    valueLabel: string;
    createEmpty: () => any;
    list: any[];
    remove: (name: string) => void;
    submit: (data: any, edit: boolean) => Promise<boolean>;
    itemTitle?: (data: any) => string;
}
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        fields?(_: {
            model: any;
            isEdit: boolean;
            nameLabel: string;
            valueLabel: string;
        }): any;
    };
    refs: {
        codeFieldRef: ({
            $: ComponentInternalInstance;
            $data: {};
            $props: Partial<{
                hidden: boolean;
                visible: boolean | Function | Record<string, any>;
                inline: boolean;
                modelValue: any;
                defaultValue: string | number | boolean | Record<string, any> | unknown[];
                editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | BuiltinFieldEditorType;
                tooltipMessage: boolean | Partial< ElTooltipProps>;
                tooltipPosition: number | "outer" | "inner";
            }> & Omit<{
                readonly visible: boolean | Function | Record<string, any>;
                readonly hidden: boolean;
                readonly modelValue: any;
                readonly editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | BuiltinFieldEditorType;
                readonly tooltipMessage: boolean | Partial< ElTooltipProps>;
                readonly tooltipPosition: number | "inner" | "outer";
                readonly inline: boolean;
                readonly size?: BaseSize | undefined;
                readonly name?: string | undefined;
                readonly props?: Record<string, any> | undefined;
                readonly width?: string | number | undefined;
                readonly label?: string | undefined;
                readonly error?: string | undefined;
                readonly disabled?: boolean | undefined;
                readonly placeholder?: string | null | undefined;
                readonly readonly?: boolean | undefined;
                readonly options?: FieldOption[] | FieldOptionsLoader | undefined;
                readonly cascader?: string | string[] | undefined;
                readonly tip?: string | undefined;
                readonly defaultValue?: string | number | boolean | Record<string, any> | unknown[] | undefined;
                readonly onFocus?: (() => any) | undefined | undefined;
                readonly onBlur?: (() => any) | undefined | undefined;
                readonly onChange?: ((value: any, data?: any) => any) | undefined | undefined;
                readonly "onUpdate:modelValue"?: ((value: any) => any) | undefined | undefined;
            } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "visible" | "hidden" | "modelValue" | "editor" | "tooltipMessage" | "tooltipPosition" | "inline" | "defaultValue">;
            $attrs: {
                [x: string]: unknown;
            };
            $refs: {
                [x: string]: unknown;
            } & {
                itemRef: ({
                    $: ComponentInternalInstance;
                    $data: {};
                    $props: Partial<{
                        readonly required: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                        readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                        readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                        readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                        readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                    }> & Omit<{
                        readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                        readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                        readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                        readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                        readonly size?: EpPropMergeType<StringConstructor, "" | "large" | "default" | "small", unknown> | undefined;
                        readonly required?: EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
                        readonly label?: string | undefined;
                        readonly error?: string | undefined;
                        readonly prop?: EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | ((new (...args: any[]) => string | string[]) | (() => FormItemProp))[], unknown, unknown> | undefined;
                        readonly rules?: EpPropMergeType<(new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>) | ((new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>))[], unknown, unknown> | undefined;
                        readonly validateStatus?: EpPropMergeType<StringConstructor, "" | "success" | "error" | "validating", unknown> | undefined;
                        readonly for?: string | undefined;
                    } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "required" | "labelWidth" | "labelPosition" | "inlineMessage" | "showMessage">;
                    $attrs: {
                        [x: string]: unknown;
                    };
                    $refs: {
                        [x: string]: unknown;
                    };
                    $slots: Readonly<{
                        [name: string]: Slot<any> | undefined;
                    }>;
                    $root: ComponentPublicInstance | null;
                    $parent: ComponentPublicInstance | null;
                    $host: Element | null;
                    $emit: (event: string, ...args: any[]) => void;
                    $el: any;
                    $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
                        readonly label: StringConstructor;
                        readonly labelWidth: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
                        readonly labelPosition: EpPropFinalized<StringConstructor, "" | "top" | "left" | "right", unknown, "", boolean>;
                        readonly prop: {
                            readonly type: PropType<EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | ((new (...args: any[]) => string | string[]) | (() => FormItemProp))[], unknown, unknown>>;
                            readonly required: false;
                            readonly validator: ((val: unknown) => boolean) | undefined;
                            __epPropKey: true;
                        };
                        readonly required: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
                        readonly rules: {
                            readonly type: PropType<EpPropMergeType<(new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>) | ((new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>))[], unknown, unknown>>;
                            readonly required: false;
                            readonly validator: ((val: unknown) => boolean) | undefined;
                            __epPropKey: true;
                        };
                        readonly error: StringConstructor;
                        readonly validateStatus: {
                            readonly type: PropType<EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
                            readonly required: false;
                            readonly validator: ((val: unknown) => boolean) | undefined;
                            __epPropKey: true;
                        };
                        readonly for: StringConstructor;
                        readonly inlineMessage: EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
                        readonly showMessage: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
                        readonly size: {
                            readonly type: PropType<EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
                            readonly required: false;
                            readonly validator: ((val: unknown) => boolean) | undefined;
                            __epPropKey: true;
                        };
                    }>>, {
                        size: ComputedRef<"" | "small" | "default" | "large">;
                        validateMessage: Ref<string>;
                        validateState: Ref<"" | "error" | "success" | "validating">;
                        validate: (trigger: string, callback?: FormValidateCallback) => FormValidationResult;
                        clearValidate: () => void;
                        resetField: () => void;
                    }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, {
                        readonly required: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                        readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                        readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                        readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                        readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                    }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
                        beforeCreate?: (() => void) | (() => void)[];
                        created?: (() => void) | (() => void)[];
                        beforeMount?: (() => void) | (() => void)[];
                        mounted?: (() => void) | (() => void)[];
                        beforeUpdate?: (() => void) | (() => void)[];
                        updated?: (() => void) | (() => void)[];
                        activated?: (() => void) | (() => void)[];
                        deactivated?: (() => void) | (() => void)[];
                        beforeDestroy?: (() => void) | (() => void)[];
                        beforeUnmount?: (() => void) | (() => void)[];
                        destroyed?: (() => void) | (() => void)[];
                        unmounted?: (() => void) | (() => void)[];
                        renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
                        renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
                        errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
                    };
                    $forceUpdate: () => void;
                    $nextTick: nextTick;
                    $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
                } & Readonly<{
                    readonly required: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                    readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                    readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                    readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                    readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                }> & Omit<Readonly< ExtractPropTypes<{
                    readonly label: StringConstructor;
                    readonly labelWidth: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
                    readonly labelPosition: EpPropFinalized<StringConstructor, "" | "top" | "left" | "right", unknown, "", boolean>;
                    readonly prop: {
                        readonly type: PropType<EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | ((new (...args: any[]) => string | string[]) | (() => FormItemProp))[], unknown, unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                    readonly required: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
                    readonly rules: {
                        readonly type: PropType<EpPropMergeType<(new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>) | ((new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>))[], unknown, unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                    readonly error: StringConstructor;
                    readonly validateStatus: {
                        readonly type: PropType<EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                    readonly for: StringConstructor;
                    readonly inlineMessage: EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
                    readonly showMessage: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
                    readonly size: {
                        readonly type: PropType<EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                }>>, "size" | "required" | "validateState" | "clearValidate" | "validate" | "labelWidth" | "labelPosition" | "inlineMessage" | "showMessage" | "validateMessage" | "resetField"> & ShallowUnwrapRef<{
                    size: ComputedRef<"" | "small" | "default" | "large">;
                    validateMessage: Ref<string>;
                    validateState: Ref<"" | "error" | "success" | "validating">;
                    validate: (trigger: string, callback?: FormValidateCallback) => FormValidationResult;
                    clearValidate: () => void;
                    resetField: () => void;
                }> & {} & ComponentCustomProperties & {} & {
                    $slots: {
                        label?(_: {
                            label: string;
                        }): any;
                        default?(_: {}): any;
                        error?(_: {
                            error: string;
                        }): any;
                    };
                }) | null;
                editorRef: unknown;
            };
            $slots: Readonly<{
                [name: string]: Slot<any> | undefined;
            }>;
            $root: ComponentPublicInstance | null;
            $parent: ComponentPublicInstance | null;
            $host: Element | null;
            $emit: ((event: "update:modelValue", value: any) => void) & ((event: "focus") => void) & ((event: "blur") => void) & ((event: "change", value: any, data?: any) => void);
            $el: any;
            $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
                name: {
                    type: StringConstructor;
                };
                label: {
                    type: StringConstructor;
                };
                editor: {
                    type: PropType< BuiltinFieldEditorType | VNode | Record<string, any>>;
                    default: string;
                };
                props: {
                    type: PropType<Record<string, any>>;
                };
                modelValue: {
                    type: PropType<any>;
                    default(context: any): any;
                };
                size: {
                    type: PropType<BaseSize>;
                };
                width: {
                    type: PropType<string | number>;
                };
                tooltipMessage: {
                    type: PropType<boolean | Partial< ElTooltipProps>>;
                    default: boolean;
                };
                tooltipPosition: {
                    type: PropType<"inner" | "outer" | number>;
                    default: string;
                };
                placeholder: {
                    type: PropType<string | null>;
                };
                disabled: {
                    type: PropType<boolean>;
                };
                readonly: {
                    type: PropType<boolean>;
                };
                options: {
                    type: PropType< FieldOption[] | FieldOptionsLoader>;
                };
                visible: {
                    type: (BooleanConstructor | ObjectConstructor | FunctionConstructor)[];
                    default: boolean;
                };
                cascader: {
                    type: PropType<string | string[]>;
                };
                error: {
                    type: StringConstructor;
                };
                tip: {
                    type: StringConstructor;
                };
                inline: {
                    type: BooleanConstructor;
                };
                hidden: {
                    type: BooleanConstructor;
                };
                defaultValue: {
                    type: (BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor | ArrayConstructor)[];
                    default: undefined;
                };
            }>> & Readonly<{
                onFocus?: (() => any) | undefined;
                onBlur?: (() => any) | undefined;
                onChange?: ((value: any, data?: any) => any) | undefined;
                "onUpdate:modelValue"?: ((value: any) => any) | undefined;
            }>, {
                fieldValue: Ref<any, any>;
                itemRef: Ref<any, any>;
                editorRef: Ref<any, any>;
                focus: () => void;
                blur: () => void;
            }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
                focus: () => any;
                blur: () => any;
                change: (value: any, data?: any) => any;
                "update:modelValue": (value: any) => any;
            }, string, {
                hidden: boolean;
                visible: boolean | Function | Record<string, any>;
                inline: boolean;
                modelValue: any;
                defaultValue: string | number | boolean | Record<string, any> | unknown[];
                editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | BuiltinFieldEditorType;
                tooltipMessage: boolean | Partial< ElTooltipProps>;
                tooltipPosition: number | "outer" | "inner";
            }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
                beforeCreate?: (() => void) | (() => void)[];
                created?: (() => void) | (() => void)[];
                beforeMount?: (() => void) | (() => void)[];
                mounted?: (() => void) | (() => void)[];
                beforeUpdate?: (() => void) | (() => void)[];
                updated?: (() => void) | (() => void)[];
                activated?: (() => void) | (() => void)[];
                deactivated?: (() => void) | (() => void)[];
                beforeDestroy?: (() => void) | (() => void)[];
                beforeUnmount?: (() => void) | (() => void)[];
                destroyed?: (() => void) | (() => void)[];
                unmounted?: (() => void) | (() => void)[];
                renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
                renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
                errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
            };
            $forceUpdate: () => void;
            $nextTick: nextTick;
            $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
        } & Readonly<{
            hidden: boolean;
            visible: boolean | Function | Record<string, any>;
            inline: boolean;
            modelValue: any;
            defaultValue: string | number | boolean | Record<string, any> | unknown[];
            editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | BuiltinFieldEditorType;
            tooltipMessage: boolean | Partial< ElTooltipProps>;
            tooltipPosition: number | "outer" | "inner";
        }> & Omit<Readonly< ExtractPropTypes<{
            name: {
                type: StringConstructor;
            };
            label: {
                type: StringConstructor;
            };
            editor: {
                type: PropType< BuiltinFieldEditorType | VNode | Record<string, any>>;
                default: string;
            };
            props: {
                type: PropType<Record<string, any>>;
            };
            modelValue: {
                type: PropType<any>;
                default(context: any): any;
            };
            size: {
                type: PropType<BaseSize>;
            };
            width: {
                type: PropType<string | number>;
            };
            tooltipMessage: {
                type: PropType<boolean | Partial< ElTooltipProps>>;
                default: boolean;
            };
            tooltipPosition: {
                type: PropType<"inner" | "outer" | number>;
                default: string;
            };
            placeholder: {
                type: PropType<string | null>;
            };
            disabled: {
                type: PropType<boolean>;
            };
            readonly: {
                type: PropType<boolean>;
            };
            options: {
                type: PropType< FieldOption[] | FieldOptionsLoader>;
            };
            visible: {
                type: (BooleanConstructor | ObjectConstructor | FunctionConstructor)[];
                default: boolean;
            };
            cascader: {
                type: PropType<string | string[]>;
            };
            error: {
                type: StringConstructor;
            };
            tip: {
                type: StringConstructor;
            };
            inline: {
                type: BooleanConstructor;
            };
            hidden: {
                type: BooleanConstructor;
            };
            defaultValue: {
                type: (BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor | ArrayConstructor)[];
                default: undefined;
            };
        }>> & Readonly<{
            onFocus?: (() => any) | undefined;
            onBlur?: (() => any) | undefined;
            onChange?: ((value: any, data?: any) => any) | undefined;
            "onUpdate:modelValue"?: ((value: any) => any) | undefined;
        }>, "visible" | "hidden" | "modelValue" | "focus" | "blur" | "editor" | "tooltipMessage" | "tooltipPosition" | "inline" | "defaultValue" | "fieldValue" | "itemRef" | "editorRef"> & ShallowUnwrapRef<{
            fieldValue: Ref<any, any>;
            itemRef: Ref<any, any>;
            editorRef: Ref<any, any>;
            focus: () => void;
            blur: () => void;
        }> & {} & ComponentCustomProperties & {} & {
            $slots: {
                label?(_: {}): any;
                error?(_: {
                    error: string;
                }): any;
                editor?(_: {
                    editor: FieldEditorProps;
                }): any;
                option?(_: {
                    option: any;
                }): any;
                tip?(_: {}): any;
                default?(_: {}): any;
            };
        }) | null;
        editorRef: CreateComponentPublicInstanceWithMixins<Readonly< Props> & Readonly<{
            "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
            onBlur?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
        }>, {
            getEditor: () => import("monaco-editor").editor.IStandaloneCodeEditor | null;
        }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
            "update:modelValue": (...args: any[]) => void;
            blur: (...args: any[]) => void;
            change: (...args: any[]) => void;
        }, PublicProps, {
            height: string;
            modelValue: string;
            dark: boolean;
            readonly: boolean;
            options: import("monaco-editor").editor.IEditorConstructionOptions;
            lang: string;
            minimap: boolean;
        }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
            container: HTMLDivElement;
        }, HTMLDivElement, ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly< Props> & Readonly<{
            "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
            onBlur?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
        }>, {
            getEditor: () => import("monaco-editor").editor.IStandaloneCodeEditor | null;
        }, {}, {}, {}, {
            height: string;
            modelValue: string;
            dark: boolean;
            readonly: boolean;
            options: import("monaco-editor").editor.IEditorConstructionOptions;
            lang: string;
            minimap: boolean;
        }> | null;
    };
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
    itemTitle: (data: any) => string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
    codeFieldRef: ({
        $: ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            hidden: boolean;
            visible: boolean | Function | Record<string, any>;
            inline: boolean;
            modelValue: any;
            defaultValue: string | number | boolean | Record<string, any> | unknown[];
            editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | BuiltinFieldEditorType;
            tooltipMessage: boolean | Partial< ElTooltipProps>;
            tooltipPosition: number | "outer" | "inner";
        }> & Omit<{
            readonly visible: boolean | Function | Record<string, any>;
            readonly hidden: boolean;
            readonly modelValue: any;
            readonly editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | BuiltinFieldEditorType;
            readonly tooltipMessage: boolean | Partial< ElTooltipProps>;
            readonly tooltipPosition: number | "inner" | "outer";
            readonly inline: boolean;
            readonly size?: BaseSize | undefined;
            readonly name?: string | undefined;
            readonly props?: Record<string, any> | undefined;
            readonly width?: string | number | undefined;
            readonly label?: string | undefined;
            readonly error?: string | undefined;
            readonly disabled?: boolean | undefined;
            readonly placeholder?: string | null | undefined;
            readonly readonly?: boolean | undefined;
            readonly options?: FieldOption[] | FieldOptionsLoader | undefined;
            readonly cascader?: string | string[] | undefined;
            readonly tip?: string | undefined;
            readonly defaultValue?: string | number | boolean | Record<string, any> | unknown[] | undefined;
            readonly onFocus?: (() => any) | undefined | undefined;
            readonly onBlur?: (() => any) | undefined | undefined;
            readonly onChange?: ((value: any, data?: any) => any) | undefined | undefined;
            readonly "onUpdate:modelValue"?: ((value: any) => any) | undefined | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "visible" | "hidden" | "modelValue" | "editor" | "tooltipMessage" | "tooltipPosition" | "inline" | "defaultValue">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        } & {
            itemRef: ({
                $: ComponentInternalInstance;
                $data: {};
                $props: Partial<{
                    readonly required: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                    readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                    readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                    readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                    readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                }> & Omit<{
                    readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                    readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                    readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                    readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                    readonly size?: EpPropMergeType<StringConstructor, "" | "large" | "default" | "small", unknown> | undefined;
                    readonly required?: EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
                    readonly label?: string | undefined;
                    readonly error?: string | undefined;
                    readonly prop?: EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | ((new (...args: any[]) => string | string[]) | (() => FormItemProp))[], unknown, unknown> | undefined;
                    readonly rules?: EpPropMergeType<(new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>) | ((new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>))[], unknown, unknown> | undefined;
                    readonly validateStatus?: EpPropMergeType<StringConstructor, "" | "success" | "error" | "validating", unknown> | undefined;
                    readonly for?: string | undefined;
                } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "required" | "labelWidth" | "labelPosition" | "inlineMessage" | "showMessage">;
                $attrs: {
                    [x: string]: unknown;
                };
                $refs: {
                    [x: string]: unknown;
                };
                $slots: Readonly<{
                    [name: string]: Slot<any> | undefined;
                }>;
                $root: ComponentPublicInstance | null;
                $parent: ComponentPublicInstance | null;
                $host: Element | null;
                $emit: (event: string, ...args: any[]) => void;
                $el: any;
                $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
                    readonly label: StringConstructor;
                    readonly labelWidth: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
                    readonly labelPosition: EpPropFinalized<StringConstructor, "" | "top" | "left" | "right", unknown, "", boolean>;
                    readonly prop: {
                        readonly type: PropType<EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | ((new (...args: any[]) => string | string[]) | (() => FormItemProp))[], unknown, unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                    readonly required: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
                    readonly rules: {
                        readonly type: PropType<EpPropMergeType<(new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>) | ((new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>))[], unknown, unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                    readonly error: StringConstructor;
                    readonly validateStatus: {
                        readonly type: PropType<EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                    readonly for: StringConstructor;
                    readonly inlineMessage: EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
                    readonly showMessage: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
                    readonly size: {
                        readonly type: PropType<EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
                        readonly required: false;
                        readonly validator: ((val: unknown) => boolean) | undefined;
                        __epPropKey: true;
                    };
                }>>, {
                    size: ComputedRef<"" | "small" | "default" | "large">;
                    validateMessage: Ref<string>;
                    validateState: Ref<"" | "error" | "success" | "validating">;
                    validate: (trigger: string, callback?: FormValidateCallback) => FormValidationResult;
                    clearValidate: () => void;
                    resetField: () => void;
                }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, Record<string, any>, string, {
                    readonly required: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                    readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                    readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                    readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                    readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
                    beforeCreate?: (() => void) | (() => void)[];
                    created?: (() => void) | (() => void)[];
                    beforeMount?: (() => void) | (() => void)[];
                    mounted?: (() => void) | (() => void)[];
                    beforeUpdate?: (() => void) | (() => void)[];
                    updated?: (() => void) | (() => void)[];
                    activated?: (() => void) | (() => void)[];
                    deactivated?: (() => void) | (() => void)[];
                    beforeDestroy?: (() => void) | (() => void)[];
                    beforeUnmount?: (() => void) | (() => void)[];
                    destroyed?: (() => void) | (() => void)[];
                    unmounted?: (() => void) | (() => void)[];
                    renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
                    renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
                    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
                };
                $forceUpdate: () => void;
                $nextTick: nextTick;
                $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
            } & Readonly<{
                readonly required: EpPropMergeType<BooleanConstructor, unknown, unknown>;
                readonly labelWidth: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
                readonly labelPosition: EpPropMergeType<StringConstructor, "" | "top" | "left" | "right", unknown>;
                readonly inlineMessage: EpPropMergeType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
                readonly showMessage: EpPropMergeType<BooleanConstructor, unknown, unknown>;
            }> & Omit<Readonly< ExtractPropTypes<{
                readonly label: StringConstructor;
                readonly labelWidth: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, "", boolean>;
                readonly labelPosition: EpPropFinalized<StringConstructor, "" | "top" | "left" | "right", unknown, "", boolean>;
                readonly prop: {
                    readonly type: PropType<EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | ((new (...args: any[]) => string | string[]) | (() => FormItemProp))[], unknown, unknown>>;
                    readonly required: false;
                    readonly validator: ((val: unknown) => boolean) | undefined;
                    __epPropKey: true;
                };
                readonly required: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
                readonly rules: {
                    readonly type: PropType<EpPropMergeType<(new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>) | ((new (...args: any[]) => FormItemRule | FormItemRule[]) | (() => Arrayable<FormItemRule>))[], unknown, unknown>>;
                    readonly required: false;
                    readonly validator: ((val: unknown) => boolean) | undefined;
                    __epPropKey: true;
                };
                readonly error: StringConstructor;
                readonly validateStatus: {
                    readonly type: PropType<EpPropMergeType<StringConstructor, "" | "error" | "success" | "validating", unknown>>;
                    readonly required: false;
                    readonly validator: ((val: unknown) => boolean) | undefined;
                    __epPropKey: true;
                };
                readonly for: StringConstructor;
                readonly inlineMessage: EpPropFinalized<readonly [StringConstructor, BooleanConstructor], unknown, unknown, "", boolean>;
                readonly showMessage: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
                readonly size: {
                    readonly type: PropType<EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
                    readonly required: false;
                    readonly validator: ((val: unknown) => boolean) | undefined;
                    __epPropKey: true;
                };
            }>>, "size" | "required" | "validateState" | "clearValidate" | "validate" | "labelWidth" | "labelPosition" | "inlineMessage" | "showMessage" | "validateMessage" | "resetField"> & ShallowUnwrapRef<{
                size: ComputedRef<"" | "small" | "default" | "large">;
                validateMessage: Ref<string>;
                validateState: Ref<"" | "error" | "success" | "validating">;
                validate: (trigger: string, callback?: FormValidateCallback) => FormValidationResult;
                clearValidate: () => void;
                resetField: () => void;
            }> & {} & ComponentCustomProperties & {} & {
                $slots: {
                    label?(_: {
                        label: string;
                    }): any;
                    default?(_: {}): any;
                    error?(_: {
                        error: string;
                    }): any;
                };
            }) | null;
            editorRef: unknown;
        };
        $slots: Readonly<{
            [name: string]: Slot<any> | undefined;
        }>;
        $root: ComponentPublicInstance | null;
        $parent: ComponentPublicInstance | null;
        $host: Element | null;
        $emit: ((event: "update:modelValue", value: any) => void) & ((event: "focus") => void) & ((event: "blur") => void) & ((event: "change", value: any, data?: any) => void);
        $el: any;
        $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
            name: {
                type: StringConstructor;
            };
            label: {
                type: StringConstructor;
            };
            editor: {
                type: PropType< BuiltinFieldEditorType | VNode | Record<string, any>>;
                default: string;
            };
            props: {
                type: PropType<Record<string, any>>;
            };
            modelValue: {
                type: PropType<any>;
                default(context: any): any;
            };
            size: {
                type: PropType<BaseSize>;
            };
            width: {
                type: PropType<string | number>;
            };
            tooltipMessage: {
                type: PropType<boolean | Partial< ElTooltipProps>>;
                default: boolean;
            };
            tooltipPosition: {
                type: PropType<"inner" | "outer" | number>;
                default: string;
            };
            placeholder: {
                type: PropType<string | null>;
            };
            disabled: {
                type: PropType<boolean>;
            };
            readonly: {
                type: PropType<boolean>;
            };
            options: {
                type: PropType< FieldOption[] | FieldOptionsLoader>;
            };
            visible: {
                type: (BooleanConstructor | ObjectConstructor | FunctionConstructor)[];
                default: boolean;
            };
            cascader: {
                type: PropType<string | string[]>;
            };
            error: {
                type: StringConstructor;
            };
            tip: {
                type: StringConstructor;
            };
            inline: {
                type: BooleanConstructor;
            };
            hidden: {
                type: BooleanConstructor;
            };
            defaultValue: {
                type: (BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor | ArrayConstructor)[];
                default: undefined;
            };
        }>> & Readonly<{
            onFocus?: (() => any) | undefined;
            onBlur?: (() => any) | undefined;
            onChange?: ((value: any, data?: any) => any) | undefined;
            "onUpdate:modelValue"?: ((value: any) => any) | undefined;
        }>, {
            fieldValue: Ref<any, any>;
            itemRef: Ref<any, any>;
            editorRef: Ref<any, any>;
            focus: () => void;
            blur: () => void;
        }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
            focus: () => any;
            blur: () => any;
            change: (value: any, data?: any) => any;
            "update:modelValue": (value: any) => any;
        }, string, {
            hidden: boolean;
            visible: boolean | Function | Record<string, any>;
            inline: boolean;
            modelValue: any;
            defaultValue: string | number | boolean | Record<string, any> | unknown[];
            editor: Record<string, any> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | BuiltinFieldEditorType;
            tooltipMessage: boolean | Partial< ElTooltipProps>;
            tooltipPosition: number | "outer" | "inner";
        }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
            renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
    } & Readonly<{
        hidden: boolean;
        visible: boolean | Function | Record<string, any>;
        inline: boolean;
        modelValue: any;
        defaultValue: string | number | boolean | Record<string, any> | unknown[];
        editor: Record<string, any> | VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }> | BuiltinFieldEditorType;
        tooltipMessage: boolean | Partial< ElTooltipProps>;
        tooltipPosition: number | "outer" | "inner";
    }> & Omit<Readonly< ExtractPropTypes<{
        name: {
            type: StringConstructor;
        };
        label: {
            type: StringConstructor;
        };
        editor: {
            type: PropType< BuiltinFieldEditorType | VNode | Record<string, any>>;
            default: string;
        };
        props: {
            type: PropType<Record<string, any>>;
        };
        modelValue: {
            type: PropType<any>;
            default(context: any): any;
        };
        size: {
            type: PropType<BaseSize>;
        };
        width: {
            type: PropType<string | number>;
        };
        tooltipMessage: {
            type: PropType<boolean | Partial< ElTooltipProps>>;
            default: boolean;
        };
        tooltipPosition: {
            type: PropType<"inner" | "outer" | number>;
            default: string;
        };
        placeholder: {
            type: PropType<string | null>;
        };
        disabled: {
            type: PropType<boolean>;
        };
        readonly: {
            type: PropType<boolean>;
        };
        options: {
            type: PropType< FieldOption[] | FieldOptionsLoader>;
        };
        visible: {
            type: (BooleanConstructor | ObjectConstructor | FunctionConstructor)[];
            default: boolean;
        };
        cascader: {
            type: PropType<string | string[]>;
        };
        error: {
            type: StringConstructor;
        };
        tip: {
            type: StringConstructor;
        };
        inline: {
            type: BooleanConstructor;
        };
        hidden: {
            type: BooleanConstructor;
        };
        defaultValue: {
            type: (BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor | ArrayConstructor)[];
            default: undefined;
        };
    }>> & Readonly<{
        onFocus?: (() => any) | undefined;
        onBlur?: (() => any) | undefined;
        onChange?: ((value: any, data?: any) => any) | undefined;
        "onUpdate:modelValue"?: ((value: any) => any) | undefined;
    }>, "visible" | "hidden" | "modelValue" | "focus" | "blur" | "editor" | "tooltipMessage" | "tooltipPosition" | "inline" | "defaultValue" | "fieldValue" | "itemRef" | "editorRef"> & ShallowUnwrapRef<{
        fieldValue: Ref<any, any>;
        itemRef: Ref<any, any>;
        editorRef: Ref<any, any>;
        focus: () => void;
        blur: () => void;
    }> & {} & ComponentCustomProperties & {} & {
        $slots: {
            label?(_: {}): any;
            error?(_: {
                error: string;
            }): any;
            editor?(_: {
                editor: FieldEditorProps;
            }): any;
            option?(_: {
                option: any;
            }): any;
            tip?(_: {}): any;
            default?(_: {}): any;
        };
    }) | null;
    editorRef: CreateComponentPublicInstanceWithMixins<Readonly< Props> & Readonly<{
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
    }>, {
        getEditor: () => import("monaco-editor").editor.IStandaloneCodeEditor | null;
    }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
        "update:modelValue": (...args: any[]) => void;
        blur: (...args: any[]) => void;
        change: (...args: any[]) => void;
    }, PublicProps, {
        height: string;
        modelValue: string;
        dark: boolean;
        readonly: boolean;
        options: import("monaco-editor").editor.IEditorConstructionOptions;
        lang: string;
        minimap: boolean;
    }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
        container: HTMLDivElement;
    }, HTMLDivElement, ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< Props> & Readonly<{
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
    }>, {
        getEditor: () => import("monaco-editor").editor.IStandaloneCodeEditor | null;
    }, {}, {}, {}, {
        height: string;
        modelValue: string;
        dark: boolean;
        readonly: boolean;
        options: import("monaco-editor").editor.IEditorConstructionOptions;
        lang: string;
        minimap: boolean;
    }> | null;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
