import { type MediaInventory } from "../agent/artifacts.ts"; export type MediaAsset = MediaInventory["assets"][number]; export type MediaSlot = { id: string; route: string; purpose: string; placement?: "section" | "header" | "footer"; sectionId?: string; kind?: "image" | "video"; identity?: MediaAsset["identity"]; minWidth?: number; }; export type MediaSelection = { version: 1; placements: { slot: MediaSlot; assetId?: string; reason: string; crop?: string; noMatch?: boolean; }[]; }; export declare function identityAsset(asset: MediaAsset): boolean; export declare function eligibleForSlot(asset: MediaAsset, slot: MediaSlot): boolean; /** Retrieve by section meaning before imposing the inference cap; inventory order is not relevance. */ export declare function shortlistForSlot(assets: MediaAsset[], slot: MediaSlot, limit?: number): MediaAsset[]; export declare function checkMediaIdentity(assets: MediaAsset[], root?: string): string[]; export declare function validateMediaSelection(root: string, selection?: MediaSelection, requireSelection?: boolean): string[]; export declare function saveSelection(root: string, selection: MediaSelection): void; export declare function validateRenderedMedia(root: string): string[];