import type { ActionInfo, BasicComponentProps, Data, FieldInfo, PopupComponentProps } from "../basic" export type FormFieldInfo = { addonBefore?: string addonAfter?: string placeholder?: string fieldDependencyInfoList?: FieldDependencyInfo[] conditionComposeType?: ConditionComposeType fieldDependencyType?: FieldDependencyType } & FieldInfo export type FormProps = { headerTitle?: string layout?: FormLayout showReset: boolean variableForm: boolean readonly: boolean fields: FormFieldInfo[] actions?: ActionInfo[] recordActions?: ActionInfo[] valueChangeHandlers?: ValueChangeHandler[] } & BasicComponentProps & PopupComponentProps export type FieldDependencyInfo = { field: string value: string condition: FieldDependencyCondition } export type ValueChangeHandler = { watchFields: string[] handlerKey: string } export type FieldDependencyCondition = 'Empty' | 'NotEmpty' | 'Equals' | 'NotEquals' | 'GreaterThan' | 'LessThan' | 'GreaterThanOrEquals' | 'LessThanOrEquals' export type ConditionComposeType = 'And' | 'Or' export type FieldDependencyType = 'Hidden' | 'Readonly' export type FormLayout = 'Vertical' | 'Horizontal'