import { type ShapeBaseProps, type ShapeFrameProps, type Slot } from "./shape_frame"; /** * THE MEDIA SET — a body of pictures, scanned by WHERE THEY BELONG: site * photographs, scanned papers, product shots, damage reports. *"Show me what we * have of this, and which one is the current one?"* * * The row is a TILE and the picture is the row, so the name sits under the * square and nothing else competes with it. The tiles fall into RUNS — the * hierarchy tier the picture belongs to, or the day it arrived — and the head of * each says how many it holds. The record is a drawer. * * WHAT IS CURRENT AND WHAT IS HISTORY: a set of photographs of one thing is read * for the LATEST, so the verdict the model states rides each tile's foot — drawn * as nothing, eleven shots of one riser read as eleven facts. */ export interface MediaSetProps extends ShapeBaseProps, Pick, "above"> { /** * The `mark` role — the photograph, as a URL, and `null` where the row has * none. REQUIRED, and it is the whole shape. A row missing one keeps its tile, * so the grid holds its geometry and the gap is visible as a gap. */ picture: (row: T) => string | null | undefined; /** The `identity` role — what the picture is OF. */ identity: TileSlot; /** * The `category` or `party` role — WHERE the picture belongs. The runs are * this, where it is bound: a tier of the site, the party it is of. */ group?: TileSlot; /** * The `when` role — the day it arrived. With no {@link MediaSetProps.group} * bound, the runs are the DAY: a body of pictures with no hierarchy over it is * still read newest first, by the day it grew. */ when?: TileSlot; /** The `verdict` role — current against superseded, on the tile's foot. The * ONE slot here that takes a device of its own, because the foot IS a box. */ current?: Slot; } /** A SLOT AS A TILE READS IT — the field's own name and its value, and no device * of its own: a tile is a picture with a name under it, so there is no second * box a `render` could stand in. */ type TileSlot = Pick, "label" | "value">; export declare function MediaSet(props: MediaSetProps): import("react").JSX.Element; export {};