import { Ref } from 'vue';
interface Rule {
    required?: boolean;
    message?: string;
    validator?: <T>(val?: T) => Promise<void | string>;
}
/**
 * 表单状态管理
 */
export declare const useFormState: <T extends Record<string, unknown>>(initState?: T, errorMsg?: (message?: string) => void) => {
    formState: Ref<{
        [x: string]: unknown;
    }, {
        [x: string]: unknown;
    }>;
    setFormState: (newState: T) => void;
    setFormRules: (newRules: Record<keyof T, Rule>) => void;
    validFormState: () => Promise<boolean | undefined>;
    resetFormState: () => void;
};
export {};
