import { AfterViewInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
import { ModalController } from '@ionic/angular';
import { AbstractVariable } from '@iotize/tap/data';
import { ColumnMode } from '@swimlane/ngx-datatable';
import { ChartInputSingle, ChartInputStreamVar, ChartInputTable } from '../ChartDataModel';
import { OnChartSelectEvent } from '../shared-types';
import * as i0 from "@angular/core";
export declare class TapVariableTableComponent implements AfterViewInit, OnDestroy {
    modalController: ModalController;
    private cdr;
    rows: ChartInputSingle[] | ChartInputTable[];
    columns: any[];
    darkModeStatus?: boolean;
    private chartModel;
    loadingIndicator: boolean;
    reorderable: boolean;
    columnMode: ColumnMode;
    limit: number;
    valueLabel: string;
    nameLabel?: string;
    set history(enable: boolean);
    set valueCountLimit(limit: number | undefined);
    showExportButton: boolean;
    exportedFileName?: string;
    set label(indexOrArray: string | string[] | undefined | Function);
    private _history;
    private _valueCountLimit;
    private destroyed;
    private _input;
    private multiple;
    set variable(variableOrArray: AbstractVariable<number | number[]> | AbstractVariable<number | number[]>[] | undefined);
    set input(inputs: ChartInputStreamVar[]);
    columnsPushForEachKey(key: string): void;
    constructor(modalController: ModalController, cdr: ChangeDetectorRef);
    createExportedData(): ChartInputSingle[] | ChartInputTable[];
    ngAfterViewInit(): void;
    resultToTableData(result: any): void;
    onSelect(event: OnChartSelectEvent): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TapVariableTableComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TapVariableTableComponent, "tap-variable-table", never, { "loadingIndicator": "loadingIndicator"; "reorderable": "reorderable"; "columnMode": "columnMode"; "limit": "limit"; "valueLabel": "valueLabel"; "nameLabel": "nameLabel"; "history": "history"; "valueCountLimit": "valueCountLimit"; "showExportButton": "showExportButton"; "exportedFileName": "exportedFileName"; "label": "label"; "variable": "variable"; "input": "input"; }, {}, never, never, false>;
}
