import { IgcTemplateCellUpdatingEventArgs } from "./igc-template-cell-updating-event-args";
import { IgcColumnComponent } from "./igc-column-component";
import { TemplateColumn } from "./TemplateColumn";
import { TemplateFunction } from "igniteui-webcomponents-core";
/**
 * A column with customizable content.
*/
export declare class IgcTemplateColumnComponent extends IgcColumnComponent {
    protected createImplementation(): TemplateColumn;
    readonly i: TemplateColumn;
    constructor();
    private beforeStyleKeyRequested;
    private _templateCells;
    private _activeCellContent;
    private _activeCellContentElements;
    private _templateCellInitialData;
    private _templateCellInitialTemplate;
    private beforeCellUpdating;
    private _currCellInfo;
    private updateCellInfo;
    private cellInfoChanged;
    private dummyStyleKeyRequested;
    private dummyCellUpdating;
    private readonly hasTemplate;
    private _template;
    template: TemplateFunction;
    private _templateSelector;
    templateSelector: (column: IgcTemplateColumnComponent, value: any) => TemplateFunction;
    private _hasSelector;
    private onTemplateChanged;
    private _selectorStyles;
    private _selectorTemplates;
    private _keyCount;
    private updateTemplates;
    private ensureTemplateEvents;
    connectedCallback(): void;
    private static _observedAttributesIgcTemplateColumnComponent;
    static readonly observedAttributes: string[];
    static htmlTagName: string;
    protected static _isElementRegistered: boolean;
    static register(): void;
    private _cellUpdating;
    private _cellUpdating_wrapped;
    /**
     * Called when the cell content is being created or updated.
    */
    cellUpdating: (s: IgcTemplateColumnComponent, e: IgcTemplateCellUpdatingEventArgs) => void;
}
