import type { SessionTimelineItem } from '../../session/transcript-outline.js'; import { TaskConversationRepository } from '../../tasks/task-conversation-repository.js'; import type { GatewaySessionsApi } from './sessions-api.js'; export declare class TaskConversationQueryService { #private; private readonly sessions; private readonly conversations; constructor(sessions: Pick, conversations?: Pick); getMessagePage(taskId: string, options: { limit: number; offset: number; before?: number; }): Promise<{ session: { messages: import("../../session/types.js").Message[]; transcriptSummary?: import("../../session/types.js").SessionTranscriptSummary; transcriptRows?: import("../../session/session-context-for-llm.js").TranscriptStoredRow[]; key: string; name?: string; status: import("../../session/types.js").SessionStatus; tags: string[]; createdAt: string; updatedAt: string; lastAccessedAt: string; messageCount: number; estimatedTokens: number; compactedCount: number; lastFlushedAt?: string; flushCount?: number; sourceChannel: string; sourceChatId: string; customData?: Record; projectId?: string; routing?: import("../../session/types.js").SessionRoutingMeta; stats?: import("../../session/types.js").SessionStats; sessionType: import("../../session/types.js").SessionType; hiddenFromSessionList?: boolean; parentSessionKey?: string; workflowRunId?: string; workflowDefinitionId?: string; workflowAgentId?: string; workflowAgentLabel?: string; sessionId?: string; cwd?: string; sessionStartedAt?: string; lastInteractionAt?: string; }; pagination: { nextBeforeCursor?: string; before?: string; total: number; limit: number; offset: number; hasMore: boolean; }; }>; getTimeline(taskId: string): Promise; }