import type { BackgroundAgentRegistry } from './background-registry.js'; import { redactSecrets } from './redact-secrets.js'; export interface SummaryEntry { text: string; refreshedAt: number; stale: boolean; } export interface BackgroundSummarizerOptions { registry: BackgroundAgentRegistry; apiKey: string; model?: string; intervalMs?: number; maxInputTokens?: number; maxOutputTokens?: number; maxCallsPerSession?: number; callLLM?: (prompt: string, signal?: AbortSignal) => Promise; getTranscript?: (jobId: string) => string | undefined; } export { redactSecrets }; export declare class BackgroundSummarizer { private readonly registry; private readonly apiKey; private readonly model; private readonly intervalMs; private readonly maxInputTokens; private readonly maxOutputTokens; private readonly maxCallsPerSession; private readonly callLLM; private readonly getTranscriptFn; private readonly summaries; private readonly jobIndexMap; private jobIndexCounter; private callsThisSession; private readonly lastRefreshedAt; private abortController; private tickTimer; private readonly tickIntervalMs; constructor(opts: BackgroundSummarizerOptions); start(): void; stop(): void; getSummary(jobId: string): SummaryEntry | undefined; private tick; private refreshJob; }