import { InMemorySessionService } from "@iqai/adk"; import type { CreateSessionRequest, EventsResponse, LoadedAgent, SessionResponse, SessionsResponse, StateResponse } from "../../common/types"; import { AgentManager } from "../providers/agent-manager.service"; import { HotReloadService } from "../reload/hot-reload.service"; export declare class SessionsService { private readonly agentManager; private readonly sessionService; private readonly quiet; private readonly hotReload?; private logger; constructor(agentManager: AgentManager, sessionService: InMemorySessionService, quiet: boolean, hotReload?: HotReloadService | undefined); ensureAgentLoaded(agentPath: string): Promise; listSessions(agentPath: string): Promise; createSession(agentPath: string, request: CreateSessionRequest): Promise; deleteSession(agentPath: string, sessionId: string): Promise<{ success: boolean; } | { error: string; }>; switchSession(agentPath: string, sessionId: string): Promise<{ success: boolean; } | { error: string; }>; getSessionMessages(loadedAgent: LoadedAgent): Promise<{ id: number; type: "user" | "assistant"; content: string; timestamp: string; }[]>; /** * Get all sessions for a loaded agent */ getAgentSessions(loadedAgent: LoadedAgent): Promise; /** * Create a new session for a loaded agent */ createAgentSession(loadedAgent: LoadedAgent, request?: CreateSessionRequest): Promise; private getAgentPathFromUserId; /** * Delete a session for a loaded agent */ deleteAgentSession(loadedAgent: LoadedAgent, sessionId: string): Promise; /** * Get events for a specific session */ getSessionEvents(loadedAgent: LoadedAgent, sessionId: string): Promise; /** * Switch the loaded agent to use a different session */ switchAgentSession(loadedAgent: LoadedAgent, sessionId: string): Promise; /** * Get state for specific session */ getSessionState(loadedAgent: LoadedAgent, sessionId: string): Promise; /** * Update session state */ updateSessionState(loadedAgent: LoadedAgent, sessionId: string, path: string, value: unknown): Promise; /** * Helper method to set nested values using dot notation */ private setNestedValue; } //# sourceMappingURL=sessions.service.d.ts.map