import { PopupDesign, PopupModal } from './types'; /** * The stand-in picture for a form whose layout has an image area but whose * author never filled one in. * * A host that builds a form from config picks a design and leaves `imageUrl` * unset more often than not, and the layouts that place an image have nothing * to place: the image column collapses and the card reads as broken. So the * renderer draws something rather than nothing. * * It is a drawing, not a photograph, and deliberately so. An abstract wash of * bands and soft shapes carries no people, no product and no place, so it can * never contradict the copy sitting next to it, and it ships inline as a data * URI: no network request, nothing for a host's CSP to block, and no stock * photo whose licence has to be tracked. */ /** The wash's colour when a form carries no brand colour: a calm slate blue. */ export declare const DEFAULT_MEDIA_ACCENT = "#64748b"; /** * The placeholder as a `data:` URI, tinted towards `accent`. * * The accent only ever arrives as translucent layers over a near-black base, so * the result stays mid-dark whatever colour comes in. That matters for the * `image-behind` layout, which lays white copy over the image behind a scrim: a * pale brand colour used as the base would leave that copy unreadable, whereas * a pale colour glazed over ink merely reads as a lighter wash. */ export declare function defaultMediaImage(accent?: string): string; /** * The picture a card should show: the author's own, else the placeholder, else * nothing at all for the designs that have no image area. * * Nothing is written back to the form — an unset `imageUrl` stays unset, so a * form saved before this existed picks the placeholder up on its next render, * and a host that later sets a URL overrides it with no migration in between. */ export declare function mediaImageUrl(popup: Pick & { design: PopupDesign; }, accent?: string): string | undefined;