import type { BuiltEpisodicMemoryStore, BuiltMemory, BuiltTelemetry, EpisodicMemoryConfig, EpisodicMemoryEntry, EpisodicMemoryScope, EpisodicMemorySearchOptions, RetrievedEpisodicMemoryEntry } from '../../types'; import type { AgentExecutionCounter, AgentPersistenceOptions } from '../../types/sdk/agent'; import type { ObservationLogScope } from '../../types/sdk/observation-log'; export declare const RECALL_MEMORY_TOOL_NAME = "recall_memory"; interface NormalizedEpisodicMemoryConfig { topK: number; maxEntriesPerRun: number; embedder: NonNullable; embeddingModel: string; extract: EpisodicMemoryConfig['extract']; reflect: EpisodicMemoryConfig['reflect']; recallToolInstruction: string; } export interface RunEpisodicMemoryIndexerOpts { memory: BuiltMemory & BuiltEpisodicMemoryStore; config: EpisodicMemoryConfig; scope: EpisodicMemoryScope; observationScope: ObservationLogScope; threadId: string; now?: Date; executionCounter?: AgentExecutionCounter; telemetry?: BuiltTelemetry; agentName?: string; } export type RunEpisodicMemoryIndexerResult = { status: 'skipped'; reason: 'disabled' | 'no-extract' | 'no-observations'; } | { status: 'ran'; entriesWritten: number; observationsIndexed: number; }; export declare function isEpisodicMemoryEnabled(config: EpisodicMemoryConfig | undefined): config is EpisodicMemoryConfig; export declare function hasEpisodicMemoryStore(memory: BuiltMemory): memory is BuiltMemory & BuiltEpisodicMemoryStore; export declare function withEpisodicMemoryDefaults(config: EpisodicMemoryConfig): NormalizedEpisodicMemoryConfig; export declare function runEpisodicMemoryIndexer(opts: RunEpisodicMemoryIndexerOpts): Promise; export declare function createRecallMemoryTool(opts: { memory: BuiltMemory & BuiltEpisodicMemoryStore; config: EpisodicMemoryConfig; scope: EpisodicMemoryScope; executionCounter?: AgentExecutionCounter; agentName?: string; }): import("../../types").BuiltTool; export declare function rankEpisodicMemoryEntries(entries: EpisodicMemoryEntry[], query: string, opts?: EpisodicMemorySearchOptions): RetrievedEpisodicMemoryEntry[]; export declare function hashEpisodicMemoryContent(content: string): string; export declare function hashEpisodicMemoryEvidence(evidenceText: string): string; export declare function getEpisodicMemoryScope(persistence: AgentPersistenceOptions | undefined): EpisodicMemoryScope | null; export {};