import type { Provider } from './interface.js'; import type { TaskType } from '../core/types.js'; /** * Registry for managing providers */ declare class ProviderRegistry { private providers; /** * Register a provider */ register(provider: Provider): void; /** * Get a provider by name */ get(name: string): Provider | undefined; /** * Get the default provider */ getDefault(): Provider; /** * List all registered provider names */ list(): string[]; /** * List all registered providers */ listProviders(): Provider[]; /** * Find providers that support a given task type */ findByCapability(type: TaskType): Provider[]; /** * Check if a provider is registered */ has(name: string): boolean; } export declare const registry: ProviderRegistry; /** * Get a provider by name, or the default if not specified */ export declare function getProvider(name?: string): Provider; /** * Get providers that support a task type */ export declare function getProvidersForType(type: TaskType): Provider[]; export {};