import { Component } from "../mapi/types-aliased.gen.cjs"; import { Field } from "../overlay/_internal.gen.cjs"; import { Override } from "./_utils.cjs"; //#region src/generated/types/block.d.ts /** * Ordered array of named fields — the content-shape DSL form `defineBlock` * accepts and returns. A field's position in the array sets the order it appears * in the editor (mapped to the wire `pos` on push). */ type BlockFields = ReadonlyArray; /** * A Storyblok block: a named, ordered set of content fields. Uses the * content-shape DSL `fields` array rather than the MAPI wire `schema` record. */ type Block = Override, { name: TName; fields: TFields; is_root?: TIsRoot; is_nestable?: TIsNestable; /** * Escape hatch for pinning this block to a Storyblok UI-managed component * group by UUID. Component groups are normally maintained in code via the * schema directory layout; set this only if you intentionally manage groups * in the Storyblok UI, and fill in the group UUID yourself. When set, * `schema push` diffs it and sends it to the Management API; when omitted, * the block's remote group is left untouched. * * @deprecated Prefer maintaining component groups in code through the * directory layout. */ component_group_uuid?: string | null; /** * Folder membership as a display name path (e.g. `'Layout/Heros'`); `null` = * explicitly ungrouped (push clears the group). Absent = unmanaged (push * leaves the remote group untouched). */ folder?: string | null; }>; /** * A root {@link Block} (`is_root: true`). Given a union of blocks, narrows to * its root members; with no argument it is the generic root-block type. */ type RootBlock = Extract; //#endregion export { Block, BlockFields, RootBlock }; //# sourceMappingURL=block.d.cts.map