import { IFormConfig, FieldsType, ErrorsType, ValuesType } from './interfaces'; import { ValidatorsType } from './utils'; export declare type ModelConstructorType = new () => T; export declare class Form { readonly validators: ValidatorsType; readonly invalid: boolean; readonly pristine: boolean; readonly dirty: boolean; fields: FieldsType; values: ValuesType; errors: Partial>; initialValues: Partial>; submitting: boolean; submitted: boolean; submitFailed: boolean; name: string; handleSubmit: (...args: any[]) => import("mobx/lib/internal").CancellablePromise; valid: boolean; validate: (...args: any[]) => import("mobx/lib/internal").CancellablePromise; error: any; didChange?: (key: string, value: any, form: Form) => any; valuesBehavior: 'keepEmpty' | 'removeEmpty'; touched: boolean; private onSubmit?; private onSubmitSuccess?; private onSubmitFail?; private model; constructor(FormModel: ModelConstructorType, config?: IFormConfig); reset: (initialValues?: Partial>) => void; setError: (error: any) => void; }