export interface WhereConfig {
    rowId: string;
    fieldName: string;
    value: any;
}
export interface RelationConfig {
    action: string;
    operation: string;
    where: WhereConfig[];
    value: any;
}
export interface Validator {
    name: string;
    validator?: any;
    validationValue?: any;
    message?: string;
}
export interface FieldConfig {
    id: string;
    label: string;
    class?: string;
    divider?: boolean;
    fields: Fields[];
}
export interface OtherOptions {
    label: string;
    value: string;
}
export interface Attributes {
    class?: string;
    readonly?: boolean;
    placeholder?: string;
    title?: string;
    base64codedFile?: boolean;
    multiple?: boolean;
    accept?: string;
}
export interface Fields {
    label?: string;
    name: string;
    attr?: {};
    class?: string;
    options?: {};
    collections?: any;
    type: string;
    value?: any;
    validations?: Validator[];
    relation?: RelationConfig[];
    otherOptions?: OtherOptions[];
    validateForm?: boolean;
    returnValue?: boolean;
    returnFormObject?: boolean;
    resetForm?: boolean;
}
export interface UpdateAttributes {
    rowId: string;
    fieldName: string;
    attrName: string;
    value: any;
}
export interface UpdateFormValues {
    rowId: string;
    fieldName: string;
    value: any;
}
