/**
 * Chat ID Manager Service
 *
 * Centralized chat ID management with promise-based locking to prevent
 * concurrent chat ID creation. Ensures only one chat ID is created per session.
 */
declare class SessionManager {
    private static instance;
    private chatId;
    private initializationPromise;
    private constructor();
    /**
     * Get singleton instance
     */
    static getInstance(): SessionManager;
    /**
     * Get current chat ID without creating a new one
     */
    getChatId(): string | null;
    /**
     * Get or create chat ID with promise-based locking
     * If multiple calls happen concurrently, they all wait for the same promise
     */
    getOrCreateChatId(): Promise<string>;
    /**
     * Create a new chat ID - oRPC returns data directly
     */
    private createChatId;
    /**
     * Clear the current chat ID (for testing/reset purposes)
     */
    clearChatId(): void;
    /**
     * Reset the singleton instance (for testing purposes)
     */
    static resetInstance(): void;
    private getStoredChatId;
    private storeChatId;
}
export declare const sessionManager: SessionManager;
export {};
//# sourceMappingURL=SessionManager.d.ts.map