import type { TableActionType } from 'tav-ui/es/components/table/src/types/table';
import type { CSSProperties, ExtractPropTypes, PropType } from 'vue';
import type { FieldMapToTime, FormSchema } from './types/form';
import type { ColEx } from './types/index';
declare type Recordable<T = any> = Record<string, T>;
export declare const formProps: {
    model: {
        type: PropType<Recordable<any>>;
        default: {};
    };
    labelWidth: {
        type: PropType<string | number>;
        default: number;
    };
    fieldMapToTime: {
        type: PropType<FieldMapToTime>;
        default: () => never[];
    };
    compact: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    schemas: {
        type: PropType<FormSchema[]>;
        default: () => never[];
    };
    mergeDynamicData: {
        type: PropType<Recordable<any>>;
        default: null;
    };
    baseRowStyle: {
        type: PropType<CSSProperties>;
    };
    baseColProps: {
        type: PropType<Partial<ColEx>>;
    };
    autoSetPlaceHolder: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    autoSubmitOnEnter: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    submitOnReset: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    size: import("vue-types").VueTypeDef<string> & {
        default: string;
    };
    editable: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    disabled: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    emptySpan: {
        type: PropType<number>;
        default: number;
    };
    showAdvancedButton: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    transformDateFunc: {
        type: PropType<(...arg: any[]) => any>;
        default: (date: any) => any;
    };
    rulesMessageJoinLabel: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    autoAdvancedLine: import("vue-types").VueTypeValidableDef<number> & {
        default: number;
    } & {
        default: number;
    };
    alwaysShowLines: import("vue-types").VueTypeValidableDef<number> & {
        default: number;
    } & {
        default: number;
    };
    showActionButtonGroup: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    actionColOptions: PropType<Partial<ColEx>>;
    showResetButton: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    autoFocusFirstItem: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    resetButtonOptions: PropType<Partial<Partial<{
        prefixCls?: unknown;
        type?: unknown;
        htmlType?: unknown;
        shape?: unknown;
        size?: unknown;
        loading?: unknown;
        disabled?: unknown;
        ghost?: unknown;
        block?: unknown;
        danger?: unknown;
        icon?: unknown;
        href?: unknown;
        target?: unknown;
        title?: unknown;
        onClick?: unknown;
        onMousedown?: unknown;
    } & {
        htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType;
        loading: boolean | {
            delay?: number | undefined;
        };
    } & {
        type?: import("ant-design-vue/es/button/buttonTypes").ButtonType | undefined;
        target?: string | undefined;
        size?: import("ant-design-vue/es/button").ButtonSize;
        icon?: any;
        prefixCls?: string | undefined;
        ghost?: boolean | undefined;
        shape?: import("ant-design-vue/es/button/buttonTypes").ButtonShape | undefined;
        block?: boolean | undefined;
        danger?: boolean | undefined;
        href?: string | undefined;
        title?: string | undefined;
        disabled?: boolean | undefined;
        onClick?: ((event: MouseEvent) => void) | undefined;
        onMousedown?: ((event: MouseEvent) => void) | undefined;
    }>>>;
    showSubmitButton: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    } & {
        default: boolean;
    };
    submitButtonOptions: PropType<Partial<Partial<{
        prefixCls?: unknown;
        type?: unknown;
        htmlType?: unknown;
        shape?: unknown;
        size?: unknown;
        loading?: unknown;
        disabled?: unknown;
        ghost?: unknown;
        block?: unknown;
        danger?: unknown;
        icon?: unknown;
        href?: unknown;
        target?: unknown;
        title?: unknown;
        onClick?: unknown;
        onMousedown?: unknown;
    } & {
        htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType;
        loading: boolean | {
            delay?: number | undefined;
        };
    } & {
        type?: import("ant-design-vue/es/button/buttonTypes").ButtonType | undefined;
        target?: string | undefined;
        size?: import("ant-design-vue/es/button").ButtonSize;
        icon?: any;
        prefixCls?: string | undefined;
        ghost?: boolean | undefined;
        shape?: import("ant-design-vue/es/button/buttonTypes").ButtonShape | undefined;
        block?: boolean | undefined;
        danger?: boolean | undefined;
        href?: string | undefined;
        title?: string | undefined;
        disabled?: boolean | undefined;
        onClick?: ((event: MouseEvent) => void) | undefined;
        onMousedown?: ((event: MouseEvent) => void) | undefined;
    }>>>;
    resetFunc: PropType<() => Promise<void>>;
    submitFunc: PropType<() => Promise<void>>;
    getPopupContainer: PropType<() => HTMLElement>;
    hideRequiredMark: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    labelCol: PropType<Partial<ColEx>>;
    layout: import("vue-types").VueTypeDef<string> & {
        default: string;
    };
    tableAction: {
        type: PropType<TableActionType>;
    };
    wrapperCol: PropType<Partial<ColEx>>;
    colon: import("vue-types").VueTypeValidableDef<boolean> & {
        default: boolean;
    };
    labelAlign: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    rowProps: PropType<Partial<{
        align?: unknown;
        justify?: unknown;
        prefixCls?: unknown;
        gutter?: unknown;
        wrap?: unknown;
    } & {
        gutter: import("ant-design-vue/lib/grid/Row").Gutter | [import("ant-design-vue/lib/grid/Row").Gutter, import("ant-design-vue/lib/grid/Row").Gutter];
    } & {
        prefixCls?: string | undefined;
        align?: "top" | "middle" | "bottom" | "stretch" | undefined;
        wrap?: boolean | undefined;
        justify?: "start" | "space-around" | "space-between" | "center" | "end" | undefined;
    }>>;
};
export declare type FormProps = ExtractPropTypes<typeof formProps>;
export {};
