import { PepSmartFilterComponentType, PepSmartFilterType, PepSmartFilterOperatorType, PepSmartFilterOperatorUnitType } from './type'; export interface IPepSmartFilterFieldOption { value: string; count?: number; } export interface IPepSmartFilterField { id: string; name: string; isOpen?: boolean; options?: IPepSmartFilterFieldOption[]; operators?: PepSmartFilterOperatorType[]; operatorUnits?: PepSmartFilterOperatorUnitType[]; } export declare abstract class PepSmartFilterBaseField implements IPepSmartFilterField { id: string; name: string; isOpen?: boolean; options?: IPepSmartFilterFieldOption[]; operators?: PepSmartFilterOperatorType[]; operatorUnits?: PepSmartFilterOperatorUnitType[]; protected _componentType: PepSmartFilterComponentType; get componentType(): PepSmartFilterComponentType; private _type; get type(): PepSmartFilterType; constructor(field: IPepSmartFilterField); protected abstract getType(): PepSmartFilterType; } export declare class PepSmartFilterTextField extends PepSmartFilterBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare class PepSmartFilterBooleanField extends PepSmartFilterBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare abstract class PepSmartFilterDateBaseField extends PepSmartFilterBaseField { constructor(field: IPepSmartFilterField); } export declare class PepSmartFilterDateField extends PepSmartFilterDateBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare class PepSmartFilterDateTimeField extends PepSmartFilterDateBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare class PepSmartFilterMultiSelectField extends PepSmartFilterBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare abstract class PepSmartFilterNumberBaseField extends PepSmartFilterBaseField { constructor(field: IPepSmartFilterField); } export declare class PepSmartFilterIntField extends PepSmartFilterNumberBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare class PepSmartFilterRealField extends PepSmartFilterNumberBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare class PepSmartFilterCurrencyField extends PepSmartFilterNumberBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; } export declare class PepSmartFilterPercentageField extends PepSmartFilterNumberBaseField { constructor(field: IPepSmartFilterField); getType(): PepSmartFilterType; }