/**
 * Process-wide singleton accessor for `ChatV2Service`.
 *
 * The server wiring layer calls `getChatV2Service()` once and holds the
 * reference; tests can `resetChatV2Service()` to start fresh.
 *
 * @module services/chat-v2/chat-v2.singleton
 */
import { ChatV2Service, type ChatV2ServiceOptions } from './chat-v2.service.js';
/**
 * Return the process-wide `ChatV2Service`, constructing it on first call.
 *
 * @param overrides - Optional overrides passed when first constructed.
 *   Ignored on subsequent calls.
 * @returns The shared service instance
 */
export declare function getChatV2Service(overrides?: Partial<ChatV2ServiceOptions>): ChatV2Service;
/**
 * Replace the process-wide instance. Intended for tests and graceful
 * shutdown paths; do not call from request handlers.
 *
 * @param next - Optional replacement; when omitted, the singleton is cleared
 */
export declare function setChatV2ServiceForTesting(next: ChatV2Service | null): void;
/** Close the current instance (if any) and clear the singleton. */
export declare function resetChatV2Service(): void;
//# sourceMappingURL=chat-v2.singleton.d.ts.map