import { ElementRef, OnDestroy, OnInit, Renderer2 } from '@angular/core';
import { Method } from '@rxap/pattern';
import { Observable } from 'rxjs';
import { TableDataSourceDirective } from '../table-data-source.directive';
import * as i0 from "@angular/core";
export declare class TableCreateButtonDirective<Data extends Record<string, any>> implements OnInit, OnDestroy {
    private readonly method;
    private readonly elementRef;
    private readonly renderer;
    dataSource: TableDataSourceDirective<Data>;
    private _createObservable?;
    constructor(method: Method<any, Data | Observable<Data>>, elementRef: ElementRef, renderer: Renderer2);
    ngOnInit(): void;
    ngOnDestroy(): void;
    onClick(): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<TableCreateButtonDirective<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<TableCreateButtonDirective<any>, "button[rxapTableCreate]", never, { "dataSource": { "alias": "rxapTableCreate"; "required": true; }; }, {}, never, never, true, never>;
}
