///
export declare type TypeUnit = "string" | "number" | "category";
export interface StructureUnit {
name: keyof A;
label: string;
type?: TypeUnit;
options?: {
id: number;
name: string;
}[];
}
export interface FormProps {
data: Partial;
structure: StructureUnit[];
errors?: {
[k in keyof A]?: string[];
};
onSubmit: (data: Partial) => Promise;
}
export interface ToggleProps {
def: FormDef[];
data: A;
onSubmit: (data: A) => Promise;
View: (props: {
data: A;
}) => JSX.Element;
}
export declare enum FormType {
Number = 0,
Text = 1,
Select = 2,
Switch = 3
}
export interface FormDef {
name: keyof A;
label?: string;
uiType: FormType;
optional: boolean;
options?: {
id: number | string;
name: string;
}[];
hide?: boolean;
disabled?: boolean;
}
export interface GeneratorProps {
formDef: any[];
errors: any;
data: A;
setData: (d: A) => void;
isLoading: boolean;
}