/**
 * Use this directive as a reusable mechanism to capture optional templates for use inside of a component.  This allows component
 * developers to support complex variations of basic functionality without needing to support all variations inside the component
 * logic itself, and helps avoid or minimize the need for complicated "configuration" interfaces to control component behaviors.  See
 * [README.md](README.md) for more information.
 *
 * @copyright Alert Logic 2022
 * @author McNielsen <knielsen@alertlogic.com>
 */
import { TemplateRef, OnInit, OnDestroy } from '@angular/core';
import { AlTemplateIndexService } from '../services/al-template-index.service';
import * as i0 from "@angular/core";
export declare class AlTemplateDirective implements OnInit, OnDestroy {
    template: TemplateRef<any>;
    index: AlTemplateIndexService;
    templateId: string;
    /**
     * Attribute value is treated as the property for which this custom control should be used.
     */
    set alTemplate(value: string);
    category?: string;
    constructor(template: TemplateRef<any>, index: AlTemplateIndexService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDef<AlTemplateDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDefWithMeta<AlTemplateDirective, "[alTemplate]", never, { "alTemplate": "alTemplate"; "category": "category"; }, {}, never>;
}
