import { ElementRef, OnChanges, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core';
import { Column } from './table.model';
import * as i0 from "@angular/core";
/**
 * Directive use to customize header cell
 * inside a mic-table component
 */
export declare class TableHeaderCellDirective<T> implements OnChanges {
    private readonly elementRef;
    private readonly renderer;
    private readonly viewContainerRef;
    column: Column<T>;
    /**
     * Method use to retrieve corresponding template by name
     *
     * @see TableHeaderCellTemplateDirective
     */
    templateFinder?: (name?: string) => TemplateRef<{}>;
    protected textNode: any;
    constructor(elementRef: ElementRef, renderer: Renderer2, viewContainerRef: ViewContainerRef);
    ngOnChanges(): void;
    /**
     * Render the template view in the dom
     * using the template name
     */
    private renderTemplate;
    static ɵfac: i0.ɵɵFactoryDeclaration<TableHeaderCellDirective<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<TableHeaderCellDirective<any>, "[micHeaderCell]", never, { "column": { "alias": "micHeaderCell"; "required": false; }; "templateFinder": { "alias": "templateFinder"; "required": false; }; }, {}, never, never, false, never>;
}
