import { SortCondition } from "./SortCondition";
import { ST_SortBy } from "./ST_SortBy";
import { Nullable$1, Type } from "igniteui-react-core";
import { FormatConditionIconSet } from "./FormatConditionIconSet";
import { ST_IconSetType } from "./ST_IconSetType";
import { SortDirection } from "./SortDirection";
import { ISortable } from "./ISortable";
import { SortSettings_SortOperation$1 } from "./SortSettings_SortOperation$1";
/**
 * Represents a sort condition which will sort cells based on a specific conditioanl formmat icon.
 * <p class="body">
 * This sort condition specifies a single icon. Cells with this icon will be moved to the beginning of the data range for the ascending
 * sort direction and moved to the end of the data range for the descending sort direction. All matching cells will be kept in their same
 * relative order to each other. In addition, all non-matching cells will be kept in their same relative order to each other.
 * </p>
 * @see [[SortSettings`1.sortConditions]]
 * @see [[SortCondition.sortDirection]]
 */
export declare class IconSortCondition extends SortCondition {
    static $t: Type;
    private readonly _l;
    private readonly _j;
    constructor(ascending: boolean, iconSetInternal: ST_IconSetType, iconIndex: number | null);
    constructor(iconSet: FormatConditionIconSet, iconIndex: number | null);
    constructor(iconSet: FormatConditionIconSet, iconIndex: number | null, sortDirection: SortDirection);
    constructor(..._rest: any[]);
    /**
     * @hidden
     */
    _a(): SortCondition;
    /**
     * @hidden
     */
    _g<T extends ISortable>($t: Type, a: SortSettings_SortOperation$1<T>, b: number, c: number, d: number, e: number): number;
    /**
     * @hidden
     */
    _f(a: SortCondition): boolean;
    /**
     * @hidden
     */
    protected get__d(): ST_SortBy;
    /**
     * @hidden
     */
    get _d(): ST_SortBy;
    /**
     * The icon set (read-only).
     */
    get iconIndex(): number | null;
    /**
     * @hidden
     */
    get _iconIndex$i(): Nullable$1<number>;
    /**
     * The icon's index in the associated icon set or null for 'NoCellIcon' (read-only).
     */
    get iconSet(): FormatConditionIconSet;
    /**
     * @hidden
     */
    get _n(): Nullable$1<number>;
    /**
     * @hidden
     */
    get _k(): ST_IconSetType;
}
