import type { ContainerResolver } from './resolver.ts'; import type { InspectableConstructor } from './types.ts'; /** * The default provider for resolving dependencies. It uses the resolver * to resolve all the values. * * This function examines the class constructor or method for dependency * injection metadata (added via the @inject decorator) and resolves * each dependency using the container resolver. * * @param binding - The class constructor with container injection metadata * @param property - The property key (constructor or method name) * @param resolver - Container resolver to resolve dependencies * @param runtimeValues - Optional runtime values to override injected dependencies * * @example * ```ts * const dependencies = await containerProvider( * UsersController, * '_constructor', * resolver, * [] * ) * ``` */ export declare function containerProvider(binding: InspectableConstructor, property: string | symbol | number, resolver: ContainerResolver, runtimeValues?: any[]): Promise;