;
withoutForm?: boolean;
disableEditButton?: boolean;
hidePreviewDivider?: boolean;
valueFormater?: (value: any) => any;
currentStep?: number;
subscribedFields?: FormItemName[];
description?: string | React.ReactNode;
dateLimitationType?: 'relative' | 'absolute';
absoluteRangeStart?: number;
absoluteRangeEnd?: number;
relativeRangeStart?: {
type: 'day' | 'month' | 'year';
quantity: number;
pattern?: string;
dependField?: NamePath;
};
relativeRangeEnd?: {
type: 'day' | 'month' | 'year';
quantity: number;
pattern?: string;
dependField?: NamePath;
};
validationCode?: {
code: string;
errorMessage: string;
warningOnly?: boolean;
}[];
length?: number;
minLength?: number;
maxLength?: number;
idType?: 'KTP' | 'NIK';
validationRule?: string;
shouldRenderCode?: string;
disabledCode?: string;
automaticCalcCode?: string;
enableAutomaticCalc?: boolean;
[key: string]: any;
}
export interface FormItemConfig extends FormItemExtraConfig {
type?: string;
name?: NamePath;
label?: string | React.ReactNode;
previewLabel?: string | React.ReactNode;
labelProps?: any;
contentProps?: any;
ocr?: {
vender: string;
outputMap: {
field: string[];
source: string[];
}[];
};
}
export type FormItemPropsHandler = (config: FormItemConfig) => FormItemConfig;
export interface FC extends React.FunctionComponent
{
formItemPropsHandler?: FormItemPropsHandler;
isPreviewSupport?: boolean;
}
export interface Form extends React.ForwardRefExoticComponent> {
useForm: () => FormInstance;
}
export interface IglooComponentProps {
validateField?: (nameList?: NamePath[]) => Promise;
containerRef?: React.RefObject;
setFieldError?(errorMsg?: string): void;
setFieldValue?(value?: any): void;
setShowStepButton?: (showButton: boolean) => void;
getFormInstance?: () => FormInstance;
locales?: {
[key: string]: string;
};
}