import { Symbol } from './symbol';
import { DirectiveMetadata } from './metadata';
export declare class DirectiveSymbol extends Symbol<'Directive'> {
    readonly annotation = "Directive";
    get metadata(): DirectiveMetadata | null;
    /**
     * Return class & factory providers specific to this class
     * @note only providers specified in the `provider` fields of the directive will be returned (not the module).
     */
    getProviders(): (import("./injectable.symbol").InjectableSymbol | import("./provider").Provider)[];
    /** Return dependencies injected in the constructor of the directive */
    getDependencies(): (import("./injectable.symbol").InjectableSymbol | import("./module.symbol").NgModuleSymbol | DirectiveSymbol | import("./component.symbol").ComponentSymbol | import("./pipe.symbol").PipeSymbol | import("./provider").Provider)[];
}
