import { Provider, Type } from '@angular/core'; import { HostComponent } from '../Spec-host/host-component'; import { BaseSpecOverrides } from '../base/options'; import { SpecDirectiveOptions } from './options'; import { SpecDirective } from './spec-directive'; /** * @publicApi */ export declare type SpecDirectiveFactory = (template: string, overrides?: SpecDirectiveOverrides) => SpecDirective; /** * @publicApi */ export declare type PresetSpecDirectiveFactory = (template?: string, overrides?: SpecDirectiveOverrides) => SpecDirective; /** * @publicApi */ export interface SpecDirectiveOverrides extends BaseSpecOverrides { detectChanges?: boolean; props?: Partial; hostProps?: HostComponent extends H ? HP : Partial; directiveProviders?: Provider[]; } /** * @publicApi */ export declare function createDirectiveFactory(options: SpecDirectiveOptions & { template: string; }): PresetSpecDirectiveFactory; /** * @publicApi */ export declare function createDirectiveFactory(typeOrOptions: Type | SpecDirectiveOptions): SpecDirectiveFactory;