export declare type ValidationMode = "onBlur" | "onChange" | "onSubmit" | "onTouched" | "all"; export declare type RevalidationMode = "onSubmit" | "onBlur" | "onChange"; export declare type InputType = "text" | "date" | "datetime-local" | "url" | "email" | "password"; export declare type FormComponentType = "input" | "select" | "radio" | "checkbox" | "textarea"; export declare type ValidationOption = "required" | "min" | "max" | "minLength" | "maxLength" | "pattern" | "validate"; export declare type ValidationType = "default" | "yup"; export interface FormFieldAnswers { type: FormComponentType; inputType?: InputType; validation?: ValidationOption[]; yupType?: string; yupValidation?: string[]; minNumber?: number; maxNumber?: number; minLengthNumber?: number; maxLengthNumber?: number; } export interface Field extends FormFieldAnswers { name: string; } export interface FormInquirerAnswers { name: string; withContext: boolean; withValidation: boolean; validationMode: ValidationMode; revalidationMode: RevalidationMode; fields: string; output: string; typescript: boolean; exportType: string; includeIndex: boolean; validationType: ValidationType; } export declare const formInquirer: (config?: { version: string; component: { type: string; test: boolean; style: string; storybook: boolean; exportType: string; includeIndex: boolean; translations: boolean; rootDir: string; disabled: boolean; }; api: { type: string; init: boolean; crud: boolean; prefix: string; rootDir: string; disabled: boolean; }; router: { main: boolean; type: string; withTabs: boolean; rootDir: string; disabled: boolean; }; form: { withContext: boolean; withValidation: boolean; type: string; validationMode: string; revalidationMode: string; exportType: string; includeIndex: boolean; rootDir: string; disabled: boolean; validationType: string; }; } | undefined, name?: string | undefined) => Promise;