import { EventEmitter, OnChanges } from '@angular/core';
import { MatTable } from '@angular/material/table';
import { MatPaginator } from '@angular/material/paginator';
export declare const buttonsConfig: {
    read: {
        icon: string;
        name: string;
        tooltip: string;
    };
    update: {
        icon: string;
        name: string;
        tooltip: string;
    };
    delete: {
        icon: string;
        name: string;
        tooltip: string;
    };
    download: {
        icon: string;
        name: string;
        tooltip: string;
    };
};
export declare class NgxMaterialDynamicTableComponent implements OnChanges {
    dataSource: any;
    displayedColumns: any[];
    actions: any;
    configEditRow: any;
    filter: boolean;
    buttonAddNewItem: boolean;
    buttonExport: boolean;
    componentName: any;
    buttonsConfig: {
        read: {
            icon: string;
            name: string;
            tooltip: string;
        };
        update: {
            icon: string;
            name: string;
            tooltip: string;
        };
        delete: {
            icon: string;
            name: string;
            tooltip: string;
        };
        download: {
            icon: string;
            name: string;
            tooltip: string;
        };
    };
    sendClick: EventEmitter<any>;
    table: MatTable<any>;
    paginator: MatPaginator;
    sort: MatTable<any>;
    loading: boolean;
    action: boolean;
    displayedColumnsObject: any[];
    dados: any;
    constructor();
    ngOnChanges(): void;
    createDatasource(): void;
    createColumns(): void;
    showTable(): void;
    sendAction(action: any, row?: any, index?: any): void;
    addActionColumn(): void;
    applyFilter(filterValue: string): void;
}
