import { type OperationIr, type RefValue } from "../ir/operations.js"; import { type ContentFieldValue, type ContentItemRecipe } from "../schema/recipe.js"; import { type CompileContext } from "./shared.js"; import { type ImageMediaSink } from "./media.js"; export declare function compileContentItemRecipe(input: ContentItemRecipe, context: CompileContext, emittedFolders?: Set): OperationIr; /** * Encode one ContentFieldValue to a RefValue. Every supported shape * returns a RefValue; unsupported shapes (e.g. `link-internal`) throw * INPUT_INVALID at compile time — see the limitations docblock on * `compileContentItemRecipe`. Throws on truly invalid input. * * Exported so `compilePageRecipe` reuses the exact same field-value * encoding for page-item fields. * * `imageMedia` (fieldName + sink) opts external-URL image values into * media-item materialisation: a MediaUpload op lands in the sink and * the returned value is a `media-xml-ref` (resolved to * `` at apply). Without it, external URLs * fall back to the legacy `src=` XML — stored fine, but never rendered * by the Layout Service. */ export declare const encodeContentFieldValue: (value: ContentFieldValue, recipeHandle: string, site: string, imageMedia?: { fieldName: string; } & ImageMediaSink) => RefValue;