import { InjectionToken } from './module'; import { ProvideToken, ILazyInject, Provider, Type, FactoryProvider, ValueProvider, ClassProvider, ExistingProvider, DynamicModule, ModuleImport, Token, OpaqueToken } from './interfaces'; export declare class Registry { static readonly lazyInjects: Set; static clearLazyInjects(): void; static getLazyInjects(target: Type | Function): ILazyInject[]; static isModule(target: unknown): boolean; static hasForwardRef(provider: ModuleImport): boolean; static getForwardRef(provider: ModuleImport): Type; static getProviderName(provider: Provider): string; static isInjectionToken(target: unknown): target is InjectionToken; static isToken(target: unknown): target is Token; static isOpaqueToken(target: unknown): target is OpaqueToken; static assertProvider(val: unknown, context?: string): void; static getProviderToken(provider: Provider): Token; static getToken(token: OpaqueToken): Token; static getOpaqueToken(provider: Provider): OpaqueToken; static isDynamicModule(module: any): module is DynamicModule; static isFactoryProvider(provider: Provider, scope: string): provider is FactoryProvider; static isValueProvider(provider: Provider): provider is ValueProvider; static isClassProvider(provider: Provider, scope: string): provider is ClassProvider; static isExistingProvider(provider: Provider, scope: string): provider is ExistingProvider; static hasProvideToken(provider: any): provider is ProvideToken; }