import { type ContextEvidenceRef } from "./context-item.ts"; import type { MemoryPromptBudget } from "./memory-prompt-budget.ts"; export type MemoryTier = "standing" | "current_work" | "long_term" | "evidence_pointer"; export type MemoryCandidateDropReason = "budget_exhausted" | "tier_lower_priority" | "stale_or_conflicting" | "secret_like" | "oversized_item" | "retrieval_not_triggered" | "empty_summary"; export interface MemoryTierCandidate { id: string; tier: MemoryTier; sourceLabel: string; summary: string; score?: number; stale?: boolean; conflict?: string; evidenceRefs?: readonly ContextEvidenceRef[]; } export interface MemoryTierDiagnostic { candidateId: string; tier: MemoryTier; reason: MemoryCandidateDropReason; } export interface TieredMemoryPromptResult { text: string | undefined; includedCount: number; omittedCount: number; diagnostics: MemoryTierDiagnostic[]; } export declare function composeTieredMemoryPromptBlock(candidates: readonly MemoryTierCandidate[], budget: MemoryPromptBudget): TieredMemoryPromptResult; //# sourceMappingURL=memory-tier-composer.d.ts.map