import type { ProviderRegistryOptions } from "../types/index.js"; /** * Provider Registry - registers all providers with the factory * This is where we migrate providers one by one to the new pattern */ export declare class ProviderRegistry { private static registered; private static registrationPromise; private static options; /** * NEW4: per-handler registration outcomes for the realtime voice * providers. `"ok"` = registered; any other string = the error message. * Empty until the first `registerAllProviders()` call. */ static realtimeRegistration: Record; /** * Returns a snapshot of voice provider registration outcomes so callers * can detect at runtime which voice handlers are usable. Useful in * health-check endpoints and CI startup probes. */ static getRegistrationReport(): { realtime: Record; }; /** * Register all providers with the factory */ static registerAllProviders(): Promise; /** * Internal registration implementation * * This method is a flat list of 13 provider registrations. Each registration * is self-contained and extracting helpers would add indirection without * reducing complexity — the function is long because there are many providers, * not because any single registration is complex. */ private static _doRegister; /** * Check if providers are registered */ static isRegistered(): boolean; /** * Clear registrations (for testing) */ static clearRegistrations(): void; /** * Set registry options (should be called before initialization) */ static setOptions(options: ProviderRegistryOptions): void; /** * Get current registry options */ static getOptions(): ProviderRegistryOptions; }