import { ValidatorFn } from "@angular/forms"; import { OptionSelect } from "./option-select.interface"; import { ErrorValidator } from "./error-validator.interface"; import { Mask } from "./mask.interface"; import { FILTER_TYPE } from "../enum/filter-type.enum"; import { INPUT_TYPE } from "../enum/input-type.enum"; import { LucideIcon } from "./lucide.interface"; export interface Filter { id: string; type: FILTER_TYPE; main?: boolean; disabled?: boolean; hide?: boolean; required?: boolean; value?: string | string[] | number | OptionSelect; values?: OptionSelect[]; validators?: ValidatorFn[]; placeholder?: string; label?: string; inputType?: INPUT_TYPE; minLength?: number; maxLength?: number; minDate?: string; maxDate?: string; pattern?: RegExp; mask?: Mask; errors?: ErrorValidator[]; autocompleteSelected?: boolean; multiple?: boolean; customErrorMessage?: string; group?: number; lucideIcon?: LucideIcon; }