import type { Class } from '../../utils/types.js'; import { Container } from '../container/Container.js'; import type { Provider, ProviderFactory, ProviderResolver } from './Provider.js'; export interface ClassProvider { class: Class; } export declare function isClassProvider(provider: Provider): provider is ClassProvider; export declare class ClassProviderFactory implements ProviderFactory { create(clazz: Class): ClassProvider; } export declare class ClassProviderResolver implements ProviderResolver { private readonly container; constructor(container: Container); canResolve: typeof isClassProvider; resolve(provider: ClassProvider): V; }