export interface RecallOptions { /** The task / prompt text to recall memories for. */ query: string; /** Explicit project name; when omitted it is inferred from `cwd`. */ project?: string; /** Directory used to infer the project when `project` is absent. */ cwd?: string; /** Max results to return. */ limit?: number; /** Max characters of injected text. */ maxChars?: number; /** Minimum relevance score (0..1); 0 disables the floor. */ minScore?: number; /** Injection surface tag recorded in the per-search recall log (see src/recall-log.ts). */ surface?: string; } /** The slice of the daemon client `recall` depends on — kept narrow so tests can inject a fake. */ export interface RecallClient { search(input: unknown): Promise; } export interface RecallDeps { connect?: () => Promise; inferProject?: (cwd?: string) => Promise; } /** * Runs a memory search and returns text ready for direct injection into an agent's * context. **Never throws.** A retrieval hook runs on every task, so any failure * (daemon down, search error, empty result) must degrade to "no memories injected" * rather than break the host agent — every failure path yields an empty string. */ export declare function recall(options: RecallOptions, deps?: RecallDeps): Promise;