export declare type FormListener = { name: string; fn: (isOnChange: boolean) => void; }; export declare type FormValidator = (value: any) => string | boolean; export declare type FormRules = { [name: string]: FormValidator; }; export declare type FormErrors = { [name: string]: string | boolean; }; export declare type FormValues = { [name: string]: any; }; export default class FormStore { private readonly defaultFieldsValue; private listeners; private fieldValues; private rules; private errors; constructor(values?: {}, rules?: FormRules); getFieldValue(name: string): any; getFieldValues(names?: object): {}; setFieldValue(name: string, value: any): void; setFieldValues(fields?: FormValues): void; resetFields(): void; validateField(name: string): void; validateFields(fn?: (err: FormErrors, values: FormValues) => void): void; setFieldRules(rules: FormRules): void; setFieldValidator(name: string, validator: FormValidator): void; getFieldError(name: string): string | boolean; getFieldErrors(names?: object): FormErrors; setFieldError(name: string, error: string | boolean): void; setFieldErrors(fields?: FormValues): void; subscribe(name: string, fn: (isOnChange: boolean) => void): () => void; notify(name?: string): void; }