/** * Narrative source data — episode/note collection for a period, history-span * queries, and budget-aware formatting of sources for the LLM prompt. */ import type { Database } from "./schema.js"; import type { TemporalNarrative } from "./narrative-types.js"; import { type Episode } from "./episodes.js"; import { type SemanticNote } from "./semantic-notes.js"; export declare function getEarliestEpisodeDate(db: Database, threadId: number): string | null; /** Days of episode history a thread has (earliest episode → now); 0 if none. */ export declare function getHistorySpanDays(db: Database, threadId: number): number; export declare function getEpisodesInPeriod(db: Database, threadId: number, start: string, end: string): Episode[]; export declare function getNotesInPeriod(db: Database, threadId: number, start: string, end: string): SemanticNote[]; export declare function extractEpisodeText(ep: Episode): string; export declare function formatEpisodeLine(ep: Episode, text: string): string; export declare function formatEpisodesForLLM(episodes: Episode[], maxChars: number): string; export declare function formatNotesForLLM(notes: SemanticNote[], maxChars: number): string; export declare function formatChildNarrativesForLLM(narratives: TemporalNarrative[]): string; //# sourceMappingURL=narrative-sources.d.ts.map