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