import { QueryList, AfterViewInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
import { Observable } from 'rxjs';
import { SdsTableColumnComponent } from './table-column/table-column.component';
import { SdsTableFooterComponent } from './table-footer/table-footer.component';
import { TableSortMethod, SdsPaginationLabelConfig, SdsTableSize } from './table.model';
import { SdsTableService } from './table.service';
import * as i0 from "@angular/core";
export type SdsTableTheme = 'light' | 'dark';
export declare class SdsTableComponent implements AfterViewInit, OnDestroy {
    private cdr;
    displayedRows: any[];
    tableColumns: QueryList<SdsTableColumnComponent>;
    footers: QueryList<SdsTableFooterComponent>;
    theme: SdsTableTheme;
    size?: SdsTableSize;
    defaultSort: TableSortMethod;
    paginationSize: number;
    paginationLabelConfig: SdsPaginationLabelConfig;
    tableService: SdsTableService;
    private _manualSource;
    private _dataSource;
    set dataSource(source: Observable<any[]> | any[]);
    constructor(cdr: ChangeDetectorRef);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<SdsTableComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SdsTableComponent, "sds-table", never, { "theme": { "alias": "theme"; "required": false; }; "size": { "alias": "size"; "required": false; }; "defaultSort": { "alias": "defaultSort"; "required": false; }; "paginationSize": { "alias": "paginationSize"; "required": false; }; "paginationLabelConfig": { "alias": "paginationLabelConfig"; "required": false; }; "dataSource": { "alias": "dataSource"; "required": false; }; }, {}, ["tableColumns", "footers"], ["*"], false, never>;
}
