import * as i0 from '@angular/core';
import { NgDocContextWithImplicit } from '@ng-doc/ui-kit/interfaces';

declare class NgDocLetDirective<T> {
    private readonly viewContainer;
    private readonly templateRef;
    ngDocLet: T;
    /** Inserted by Angular inject() migration for backwards compatibility */
    constructor(...args: unknown[]);
    static ngTemplateContextGuard<T>(_dir: NgDocLetDirective<T>, _ctx: unknown): _ctx is NgDocLetDirective<T>;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgDocLetDirective<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NgDocLetDirective<any>, "[ngDocLet]", never, { "ngDocLet": { "alias": "ngDocLet"; "required": false; }; }, {}, never, never, true, never>;
}

declare class NgDocLetContext<T> implements NgDocContextWithImplicit<T> {
    private readonly internalDirectiveInstance;
    constructor(internalDirectiveInstance: NgDocLetDirective<T>);
    get $implicit(): T;
    get ngDocLet(): T;
}

export { NgDocLetContext, NgDocLetDirective };
