import { ElementRef, EventEmitter, Renderer2, Injector, OnDestroy, AfterContentInit, DoCheck, OnChanges, ComponentFactoryResolver, ApplicationRef, SimpleChange } from '@angular/core';
import { GridLayout } from '@true-directive/base';
import { Column } from '@true-directive/base';
import { GridStateService } from './grid-state.service';
import { RowCell } from './row-cell.class';
export declare class RowDirective implements OnDestroy, AfterContentInit, DoCheck, OnChanges {
    protected _renderer: Renderer2;
    protected _cfResolver: ComponentFactoryResolver;
    protected appRef: ApplicationRef;
    protected injector: Injector;
    elementRef: ElementRef;
    row: any;
    state: GridStateService;
    axI: number;
    layout: GridLayout;
    empty: boolean;
    viewPortLeft: number;
    viewPortWidth: number;
    toggleCheckbox: EventEmitter<any>;
    protected readonly rowData: any;
    private _left_rendered;
    private _right_rendered;
    private readonly cells;
    private selectionMap;
    private _viewInited;
    private _wasEditor;
    private _height0;
    private _checkedAppearance;
    private _subscribes;
    /**
     * Предыдущее значение общего текстового фильтра
     */
    private _filter0;
    protected readonly st: import("@true-directive/base").GridSettings;
    protected readonly sta: import("@true-directive/base").GridAppearance;
    protected readonly currentRowIndex: number;
    protected readonly children: any;
    _editorRef: any;
    _customCellRef: any;
    firstCellRect(): any;
    private firstCellClientHeight;
    cellByXY(x: number, y: number): string;
    cellHorizontalPos(fieldName: string): any;
    clearSelection(): void;
    private getSelectionMap;
    protected setCellSelection(cell: RowCell, idx: number): number;
    setSelection(): void;
    protected clear(saveH?: boolean): void;
    protected highlight(col: Column, v: string, v_displayed: string): string;
    private fillByBoolean;
    private fillByCheckbox;
    private fillByEditor;
    private fillByCustomCell;
    protected getDisplayedValue(col: Column, rowData: any, v: any): string;
    protected fillCell(cell: RowCell, col: Column, rowData: any, isFirst: boolean, v: any, v_displayed: any): RowCell;
    /**
     * Создание ячейки
     * @param  col   Колонка
     * @param  span  Количество объединенных ячеек
     * @return       Объект RowCell
     */
    private createCell;
    protected needApplySpan(): number;
    protected renderRow(): void;
    protected renderByViewPort(): void;
    private checkEditor;
    protected checkColumns(): boolean;
    protected checkValues(): boolean;
    setDisabledFields(): void;
    protected setParams(byInit?: boolean): void;
    protected checkViewPort(): boolean;
    protected check(): boolean;
    ngOnChanges(changes: {
        [property: string]: SimpleChange;
    }): void;
    ngDoCheck(): void;
    ngAfterContentInit(): void;
    ngOnDestroy(): void;
    constructor(_renderer: Renderer2, _cfResolver: ComponentFactoryResolver, appRef: ApplicationRef, injector: Injector, elementRef: ElementRef);
}
