import { SmrtObject } from '@happyvertical/smrt-core'; import { ConversationPersona } from '../persona-conversation.js'; import { VoiceSessionOptions, VoiceSessionStatus } from '../types.js'; /** * Short-lived binding proving a voice gateway turn belongs to an authenticated * SMRT actor, persona, and chat session. Internal model: creation and turn * handling must go through the voice adapter, never raw generated mutations. */ export declare class VoiceSession extends SmrtObject { tenantId: string; /** Stable session id the gateway places in the top-level `session_id`. */ gatewaySessionId: string; actorProfileId: string; actorUserId: string | null; personaId: string; agentSessionId: string; chatRoomId: string; threadId: string | null; target: string; status: VoiceSessionStatus; expiresAt: Date; lastTurnAt: Date | null; lastGatewayTurnId: string | null; personaSnapshot: string; metadata: string; processedTurnIds: string; constructor(options?: VoiceSessionOptions); isActive(now?: Date): boolean; isExpired(now?: Date): boolean; expire(): Promise; revoke(): Promise; getPersonaSnapshot(): ConversationPersona; setPersonaSnapshot(persona: ConversationPersona): void; getMetadata(): Record; setMetadata(metadata: Record): void; getProcessedTurnIds(): string[]; hasProcessedTurn(turnId: string): boolean; recordGatewayTurn(turnId: string, maxRememberedTurns?: number): void; } //# sourceMappingURL=VoiceSession.d.ts.map