import { EditorType } from "./EditorType";
import { IgcGridCustomFilterRequestedEventArgs } from "./igc-grid-custom-filter-requested-event-args";
import { FilterOperand as FilterOperand_internal } from "./FilterOperand";
import { FilterFactory } from "igniteui-webcomponents-core";
/**
 * A filter operand.
*/
export declare class IgcFilterOperand {
    protected createImplementation(): FilterOperand_internal;
    protected _implementation: any;
    /**
     * @hidden
     */
    get i(): FilterOperand_internal;
    private onImplementationCreated;
    constructor();
    protected _provideImplementation(i: any): void;
    /**
     * Gets the FilterFactory to assists in building filters.
    */
    get filterFactory(): FilterFactory;
    /**
     * Gets or sets the ID of the filter. Must be unique from other filters in the column.
    */
    get iD(): string;
    set iD(v: string);
    /**
     * Gets or sets the name for display of this custom filter.
    */
    get displayName(): string;
    set displayName(v: string);
    /**
     * Gets or sets the SVG path to use for the operand icon in the filter cell.
    */
    get icon(): string;
    set icon(v: string);
    /**
     * Gets or sets whether this filter requires input.
    */
    get isInputRequired(): boolean;
    set isInputRequired(v: boolean);
    /**
     * The type of editor to use in the filter cell. Combo is not currently supported.
    */
    get editorType(): EditorType;
    set editorType(v: EditorType);
    findByName(name: string): any;
    private _filterRequested;
    private _filterRequested_wrapped;
    /**
     * Gets or sets a function that returns a filter expression to use.
    */
    get filterRequested(): (s: IgcFilterOperand, e: IgcGridCustomFilterRequestedEventArgs) => void;
    set filterRequested(ev: (s: IgcFilterOperand, e: IgcGridCustomFilterRequestedEventArgs) => void);
}
