import type { SqliteDatabase } from '../db/adapter.js'; import { type EntryRecord } from './entries.js'; import { type EntryKind, type EntryStatus } from '../serialization/validate.js'; import { type HybridSearchRuntime } from './hybrid-retrieval.js'; export interface SearchEntriesInput { workspace: string; query: string; limit?: number; kind?: EntryKind; status?: EntryStatus; tag?: string; includeSuperseded?: boolean; } export interface SearchResult { items: EntryRecord[]; count: number; truncated: boolean; } export interface RecallEntriesInput extends SearchEntriesInput { maxChars?: number; } export interface RecallItem { id: string; workspace: string; kind: EntryKind; status: EntryStatus; title: string; summary: string | null; snippet: string; tags: string[]; metadata: { storedData: true; untrusted: true; instructions: false; }; } export interface RecallResult { items: RecallItem[]; count: number; characterCount: number; truncated: boolean; } export interface RankedRecallHit { entryId: string; retrievalScore: number; rank: number; reasons: string[]; } export interface RankedRecallResult { hits: RankedRecallHit[]; truncated: boolean; } export declare function rankedEntryHits(database: SqliteDatabase, input: SearchEntriesInput, runtime?: HybridSearchRuntime): RankedRecallResult; export declare function searchEntries(database: SqliteDatabase, input: SearchEntriesInput, runtime?: HybridSearchRuntime): SearchResult; export declare function recallEntries(database: SqliteDatabase, input: RecallEntriesInput, runtime?: HybridSearchRuntime): RecallResult; //# sourceMappingURL=retrieval.d.ts.map