import type { AgentChatAttachment } from "../agent/types.js"; import { type OwnedAttachmentHydrationBudget } from "./owned-attachment.js"; export declare function canonicalImageReferenceUrl(value: string): string; export declare class PriorThreadImageHistoryReadError extends Error { readonly code = "prior_attachment_history_unreadable"; constructor(); } export interface PriorThreadImageHistory { attachments: AgentChatAttachment[]; contextNote?: string; } export interface PriorThreadImageHistoryCacheScope { ownerEmail: string; orgId?: string | null; threadId: string; } export declare const PRIOR_THREAD_IMAGE_CACHE_TTL_MS: number; export declare const MAX_PRIOR_THREAD_IMAGE_CACHE_ENTRIES = 16; export declare const MAX_PRIOR_THREAD_IMAGE_CACHE_ENCODED_BYTES: number; export declare function retainedStructuredHistoryImageUrls(history: unknown): ReadonlySet; /** * Rehydrate only recent image references from an already-authorized thread. * URL ownership and download limits are enforced by hydrateOwnedImageUrl. */ export declare function hydratePriorThreadImages(threadData: string, options?: { cacheScope?: PriorThreadImageHistoryCacheScope; excludeUrls?: ReadonlySet; budget?: OwnedAttachmentHydrationBudget; }): Promise;