import React from 'react'; import { Resolver, SubmitErrorHandler, SubmitHandler, UseFormReturn } from 'react-hook-form'; import { LogicalProps } from '../utils/logical-properties'; import { MQ } from '../utils/style'; export interface FormError extends Object { type: string; types: string; message: string; ref: React.RefObject; } export interface FormProps extends React.HtmlHTMLAttributes, LogicalProps { children: React.ReactNode; onSubmit: SubmitHandler>; onSubmitInvalid?: SubmitErrorHandler>; validationMode?: 'onBlur' | 'onSubmit'; reValidationMode?: 'onBlur' | 'onSubmit'; defaultValues?: Record; resolver?: Resolver, object>; } export interface FormRef { clearValidation: () => void; reset: UseFormReturn['reset']; watch: UseFormReturn['watch']; setError: UseFormReturn['setError']; setValue: UseFormReturn['setValue']; getValues: UseFormReturn['getValues']; trigger: UseFormReturn['trigger']; control: UseFormReturn['control']; element: HTMLFormElement | null; } export type FieldsHadErrorObject = Record; export type FormInputState = 'disabled' | 'valid' | 'invalid' | undefined; export type CommonInputProps = Omit, 'size'> & { size?: 'small' | 'medium' | 'large'; state?: FormInputState; onBlur?: (event: React.FocusEvent) => void; onFocus?: (event: React.FocusEvent) => void; onChange?: (event: React.ChangeEvent) => void; startEnhancer?: React.ReactNode; endEnhancer?: React.ReactNode; }; export interface EnhancerOverrides extends LogicalProps { startEnhancer?: { spaceInline?: MQ; iconSize?: MQ; }; endEnhancer?: { spaceInline?: MQ; iconSize?: MQ; }; } //# sourceMappingURL=types.d.ts.map