import type { AgentIntegrationRepository } from '../repositories/agent-integration-repository.js'; import type { AgentDashboardAggregate, AgentSession, AgentSessionPage, CaptureResult, MemoryProvenance, ObservationPage, PersistedAgentEventInput, ProvenanceTrace } from '../types.js'; import { AgentIntegrationError, type AgentIntegrationReasonCode } from './agent-integration-error.js'; export type { AgentIntegrationReasonCode }; export { AgentIntegrationError }; export interface AgentLifecycleServiceOptions { retentionDays?: number; abandonedTtlMs?: number; terminalGraceMs?: number; now?: () => Date; } export interface AgentSessionSummarizer { summarize(sessionId: string): unknown; } export declare class AgentLifecycleService { private readonly repository; private readonly sessionSummarizer?; private readonly retentionDays; private readonly abandonedTtlMs; private readonly terminalGraceMs; private readonly now; constructor(repository: AgentIntegrationRepository, options?: AgentLifecycleServiceOptions, sessionSummarizer?: AgentSessionSummarizer | undefined); schemaReady(): boolean; capture(event: PersistedAgentEventInput): CaptureResult; getSession(id: string): AgentSession | null; listSessions(query?: Parameters[0]): AgentSessionPage; getDashboardAggregate(): AgentDashboardAggregate; listObservations(sessionId: string, query?: Parameters[1]): ObservationPage; abandonExpiredSessions(at?: Date): number; private trySummarize; linkProvenance(input: { memoryId: string; sessionId?: string | null; observationId?: string | null; derivationType: string; }): MemoryProvenance; getProvenance(query: { memoryId?: string; observationId?: string; direction?: 'sources' | 'derived' | 'both'; maxDepth?: number; }): ProvenanceTrace; enforceRetention(at?: Date): { payloadsCleared: number; }; deleteSession(sessionId: string): boolean; exportSession(sessionId: string): { session: AgentSession; observations: import("../types.js").AgentObservation[]; provenance: MemoryProvenance[]; } | null; } //# sourceMappingURL=agent-lifecycle-service.d.ts.map