import { PipeTransform } from '@angular/core';
import { GridBaseAPIService } from '../api.service';
import { IgxGridBaseDirective } from '../grid-base.directive';
import { GridType } from './grid.interface';
import { DatePipe, DecimalPipe } from '@angular/common';
import { IgxColumnComponent } from '../columns/column.component';
import { ColumnDisplayOrder } from './enums';
import { IgxColumnActionsComponent } from '../column-actions/column-actions.component';
/**
 * @hidden
 * @internal
 */
export declare class IgxGridCellStyleClassesPipe implements PipeTransform {
    transform(cssClasses: {
        [prop: string]: any;
    }, _: any, data: any, field: string, index: number, __: number): string;
}
/**
 * @hidden
 * @internal
 */
export declare class IgxGridCellStylesPipe implements PipeTransform {
    transform(styles: {
        [prop: string]: any;
    }, _: any, data: any, field: string, index: number, __: number): {
        [prop: string]: any;
    };
}
/**
 * @hidden
 * @internal
 */
export declare class IgxGridNotGroupedPipe implements PipeTransform {
    transform(value: any[]): any[];
}
/**
 * @hidden
 * @internal
 */
export declare class IgxGridTopLevelColumns implements PipeTransform {
    transform(value: any[]): any[];
}
/**
 * @hidden
 * @internal
 */
export declare class IgxGridFilterConditionPipe implements PipeTransform {
    transform(value: string): string;
}
/**
 * @hidden
 * @internal
 */
export declare class IgxGridTransactionPipe implements PipeTransform {
    private gridAPI;
    constructor(gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>);
    transform(collection: any[], id: string, pipeTrigger: number): any[];
}
/**
 * @hidden
 * @internal
 */
export declare class IgxGridPaginatorOptionsPipe implements PipeTransform {
    transform(values: Array<number>): number[];
}
/**
 * @hidden
 * @internal
 */
export declare class IgxHasVisibleColumnsPipe implements PipeTransform {
    transform(values: any[], hasVisibleColumns: any): any[];
}
/**
 * @hidden
 * @internal
 */
export declare class IgxDatePipeComponent extends DatePipe implements PipeTransform {
    private readonly DEFAULT_DATE_FORMAT;
    constructor(locale: string);
    transform(value: any, locale: string): string;
}
/**
 * @hidden
 * @internal
 */
export declare class IgxDecimalPipeComponent extends DecimalPipe implements PipeTransform {
    constructor(locale: string);
    transform(value: any, locale: string): string;
}
/**
 * @hidden
 */
export declare class IgxGridRowPinningPipe implements PipeTransform {
    private gridAPI;
    constructor(gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>);
    transform(collection: any[], id: string, isPinned: boolean, pipeTrigger: number): any[];
}
export declare class IgxColumnActionEnabledPipe implements PipeTransform {
    protected columnActions: IgxColumnActionsComponent;
    constructor(columnActions: IgxColumnActionsComponent);
    transform(collection: IgxColumnComponent[], actionFilter: (value: IgxColumnComponent, index: number, array: IgxColumnComponent[]) => boolean, pipeTrigger: number): IgxColumnComponent[];
}
export declare class IgxFilterActionColumnsPipe implements PipeTransform {
    protected columnActions: IgxColumnActionsComponent;
    constructor(columnActions: IgxColumnActionsComponent);
    transform(collection: IgxColumnComponent[], filterCriteria: string, pipeTrigger: number): IgxColumnComponent[];
}
export declare class IgxSortActionColumnsPipe implements PipeTransform {
    transform(collection: IgxColumnComponent[], displayOrder: ColumnDisplayOrder, pipeTrigger: number): IgxColumnComponent[];
}
export declare class IgxGridDataMapperPipe implements PipeTransform {
    transform(data: any[], field: string, _: number): any;
}
export declare class IgxStringReplacePipe implements PipeTransform {
    transform(value: string, search: string | RegExp, replacement: string): string;
}
export declare class IgxGridTransactionStatePipe implements PipeTransform {
    transform(row_id: any, field: string, rowEditable: boolean, transactions: any, _: any, __: any): any;
}
export declare class IgxColumnFormatterPipe implements PipeTransform {
    transform(value: any, formatter: (v: any) => any): any;
}
