import { RObject } from '../remote-request/index';
import { PresetFormProps } from './index';
declare const _default: <V extends RObject>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
        readonly onValidated?: ((val: V) => any) | undefined;
    } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>, "onValidated"> & PresetFormProps<V> & Partial<{}>> & import('vue').PublicProps;
    expose(exposed: import('vue').ShallowUnwrapRef<{
        refs: {
            formRef: import('vue').Ref<import('naive-ui').FormInst | undefined, import('naive-ui').FormInst | undefined>;
            formValue: import('vue').Ref<V, V>;
            formRules: Partial<Record<keyof V, import('naive-ui').FormItemRule | import('naive-ui').FormRules | import('naive-ui').FormItemRule[]>> | undefined;
        };
        actions: {
            validate: () => Promise<{
                warnings?: import('async-validator').ValidateError[][];
            }>;
            resetValidation: () => void;
            resetForm: () => void;
            reset: () => void;
            clear: () => void;
            onValidated: import('@vueuse/core').EventHookOn<[V]>;
            setValues: (value: Partial<V>) => void;
        };
    }>): void;
    attrs: any;
    slots: {
        header?(_: {
            refs: {
                formRef: import('vue').Ref<import('naive-ui').FormInst | undefined, import('naive-ui').FormInst | undefined>;
                formValue: import('vue').Ref<V, V>;
                formRules: Partial<Record<keyof V, import('naive-ui').FormItemRule | import('naive-ui').FormRules | import('naive-ui').FormItemRule[]>> | undefined;
            };
            actions: {
                validate: () => Promise<{
                    warnings?: import('async-validator').ValidateError[][];
                }>;
                resetValidation: () => void;
                resetForm: () => void;
                reset: () => void;
                clear: () => void;
                onValidated: import('@vueuse/core').EventHookOn<[V]>;
                setValues: (value: Partial<V>) => void;
            };
        }): any;
        default?(_: {
            refs: {
                formRef: import('vue').Ref<import('naive-ui').FormInst | undefined, import('naive-ui').FormInst | undefined>;
                formValue: import('vue').Ref<V, V>;
                formRules: Partial<Record<keyof V, import('naive-ui').FormItemRule | import('naive-ui').FormRules | import('naive-ui').FormItemRule[]>> | undefined;
            };
            actions: {
                validate: () => Promise<{
                    warnings?: import('async-validator').ValidateError[][];
                }>;
                resetValidation: () => void;
                resetForm: () => void;
                reset: () => void;
                clear: () => void;
                onValidated: import('@vueuse/core').EventHookOn<[V]>;
                setValues: (value: Partial<V>) => void;
            };
        }): any;
        footer?(_: {
            refs: {
                formRef: import('vue').Ref<import('naive-ui').FormInst | undefined, import('naive-ui').FormInst | undefined>;
                formValue: import('vue').Ref<V, V>;
                formRules: Partial<Record<keyof V, import('naive-ui').FormItemRule | import('naive-ui').FormRules | import('naive-ui').FormItemRule[]>> | undefined;
            };
            actions: {
                validate: () => Promise<{
                    warnings?: import('async-validator').ValidateError[][];
                }>;
                resetValidation: () => void;
                resetForm: () => void;
                reset: () => void;
                clear: () => void;
                onValidated: import('@vueuse/core').EventHookOn<[V]>;
                setValues: (value: Partial<V>) => void;
            };
        }): any;
    };
    emit: (e: "validated", val: V) => void;
}>) => import('vue').VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
export default _default;
type __VLS_PrettifyLocal<T> = {
    [K in keyof T]: T[K];
} & {};
