import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, Injector, OnDestroy, OnInit, Renderer2 } from '@angular/core';
import { TableColumn, TableOptions, TableRowExpandEmitter } from '@ironsource/fusion-ui/components/table/common/entities';
import { TableService } from '@ironsource/fusion-ui/components/table/common/services';
import { TableTestIdModifiers } from '@ironsource/fusion-ui/entities';
import { TestIdsService } from '@ironsource/fusion-ui/services/test-ids';
import * as i0 from "@angular/core";
export declare class TableBasicComponent implements OnInit, OnDestroy, AfterViewInit {
    tableService: TableService;
    private cdr;
    private elementRef;
    private renderer;
    private injector;
    rows: {
        [key: string]: any;
    }[];
    columns: TableColumn[];
    /** @internal */
    expandedRows: {
        [key: string]: boolean;
    };
    set options(value: TableOptions);
    set tableClientWidth(value: number);
    /** @internal */
    testId: string;
    rowSelected: EventEmitter<any>;
    expandRow: EventEmitter<TableRowExpandEmitter>;
    get options(): TableOptions;
    get fullCellColspan(): number;
    get getHalfTableClientWidth(): number;
    childRowOptions: TableOptions;
    loadingChildRows: {
        [key: number]: boolean;
    };
    failedChildRows: {
        [key: number]: boolean;
    };
    rowIsSelected: any;
    rowClass: any;
    rowRowspanIndexes: any;
    /** @internal */
    tableTestIdModifiers: typeof TableTestIdModifiers;
    /** @internal */
    testIdsService: TestIdsService;
    private _halfTableClientWidth;
    private tableOptions;
    private onDestroy$;
    constructor(tableService: TableService, cdr: ChangeDetectorRef, elementRef: ElementRef, renderer: Renderer2, injector: Injector);
    ngOnInit(): void;
    ngOnDestroy(): void;
    ngAfterViewInit(): void;
    trackByRowInvoke(): any;
    trackByRow(index: any, row: any): any;
    isRowDisabled(row: any): boolean;
    isRowSelected(row: any): boolean;
    getRowClass(row: any, rowIndex: any): any[];
    onExpandRow({ rowIndex, row, isExpanded }: {
        rowIndex: any;
        row: any;
        isExpanded: any;
    }, updateMap?: boolean): void;
    displayExpandableRows(rowIndex: number | string): boolean;
    getInnerRows(index: any): any[];
    isExpanded(rowIndex: number | string): boolean;
    hasAfterSticky(isLast: any, hasMore: any, rowIndex: any): boolean;
    getRowspanIndexes(row: any): number[];
    private setHoverForRowspan;
    private toggleHoverClassForRowspan;
    private onExpendRowSuccess;
    private onExpendRowFailed;
    static ɵfac: i0.ɵɵFactoryDeclaration<TableBasicComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TableBasicComponent, "[fusionTableBasic]", never, { "rows": { "alias": "rows"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "expandedRows": { "alias": "expandedRows"; "required": false; }; "options": { "alias": "options"; "required": false; }; "tableClientWidth": { "alias": "tableClientWidth"; "required": false; }; "testId": { "alias": "testId"; "required": false; }; }, { "rowSelected": "rowSelected"; "expandRow": "expandRow"; }, never, never, false, never>;
}
