import * as PropTypes from "prop-types"; import { FormContext } from "./FormContext"; import { ModelInterface } from "../Model"; export declare type StorageRequiredInterface = Pick; export declare const StorageRequiredInterfaceTypes: { [P in keyof StorageRequiredInterface]: PropTypes.Validator; }; export interface FormProps { instantiate: () => M; method?: string; onSubmit?: (model: M, childContext: FormContext) => Promise; storageKey?: string; resetAfterSubmit?: boolean; afterSubmit?: () => void; storage?: StorageRequiredInterface; onValidate?: (groups: Array<{ name: string; isValid: boolean; }>) => void; formRef?: (node: HTMLFormElement) => void; } export declare const FormPropTypes: { [P in keyof FormProps]: PropTypes.Validator; };