import { OnChanges, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { HostProjectConfigs } from '@seniorsistemas/angular-components/common';
import { LocaleService } from '@seniorsistemas/angular-components/locale';
import { NumericService } from '@seniorsistemas/angular-components/numeric';
import { IToken } from '@seniorsistemas/angular-components/token-list';
import { Column, ColumnValues, TableColumnLocaleOptions } from './models';
import * as i0 from "@angular/core";
export declare class TableColumnsComponent implements OnChanges {
    private readonly localeService;
    private readonly viewContainerRef;
    private readonly translate;
    private readonly numericService;
    private readonly hostProjectConfigs;
    columnsTemplate: TemplateRef<any> | null;
    columns: Column[];
    rowValue: any;
    locale: TableColumnLocaleOptions | null;
    cellsData: (CellData | null)[];
    formattedColumns: ColumnValues[];
    constructor(localeService: LocaleService, viewContainerRef: ViewContainerRef, translate: TranslateService, numericService: NumericService, hostProjectConfigs: HostProjectConfigs);
    ngOnChanges(changes: SimpleChanges): void;
    isArray(value: any): boolean;
    getTokensByColumn(column: ColumnValues): IToken[];
    private getCellData;
    private validateComponentAttributes;
    private createColumnsTemplate;
    private getColumnSeparator;
    private getTranslationPrefix;
    private isAttributeValueInvalid;
    private getFormattedColumnValue;
    private getAttributeValue;
    private getNumberConfigs;
    private getDateFormat;
    private getColumnValue;
    private getColumnScale;
    private getColumnInfoSign;
    private getColumnTooltip;
    private isNumber;
    private getTokens;
    private isValidTokenArray;
    private isPrimitiveValuesArray;
    private isLabelObjectArray;
    private sortColumnsBySequence;
    static ɵfac: i0.ɵɵFactoryDeclaration<TableColumnsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TableColumnsComponent, "s-table-columns", never, { "columns": { "alias": "columns"; "required": false; }; "rowValue": { "alias": "rowValue"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; }, {}, never, never, false, never>;
}
type CellData = {
    value: string;
    isUninformed: boolean;
    separator: string | null;
}[];
export {};
