import type { Api, Model } from '@earendil-works/pi-ai'; export type PromptCacheChangeReason = 'model_changed' | 'reasoning_changed' | 'system_changed' | 'dynamic_context_changed' | 'tools_changed'; export interface PromptCacheSnapshot { modelRef: string; api: string; reasoning?: string; stableSystemDigest: string; dynamicSystemDigest: string; toolDigest: string; toolCount: number; } export declare function buildPromptCacheSnapshot(params: { model: Model; systemPrompt?: string; tools?: unknown[]; reasoning?: string; }): PromptCacheSnapshot; export declare function diffPromptCacheSnapshots(previous: PromptCacheSnapshot | undefined, next: PromptCacheSnapshot): PromptCacheChangeReason[]; export declare function observePromptCacheSnapshot(scope: string, snapshot: PromptCacheSnapshot): PromptCacheChangeReason[]; export declare function clearPromptCacheObservations(): void;