/** * Stable preset ids exposed to scaffold and UI consumers for compound * InnerBlocks authoring behavior. */ export declare const COMPOUND_INNER_BLOCKS_PRESET_IDS: readonly ['freeform', 'ordered', 'horizontal', 'locked-structure']; export type CompoundInnerBlocksPresetId = (typeof COMPOUND_INNER_BLOCKS_PRESET_IDS)[number]; /** * Default preset applied when callers do not provide an explicit compound * InnerBlocks mode. */ export declare const DEFAULT_COMPOUND_INNER_BLOCKS_PRESET_ID: CompoundInnerBlocksPresetId; export type CompoundInnerBlocksOrientation = 'horizontal' | 'vertical'; export type CompoundInnerBlocksTemplateLock = false | 'insert' | 'all'; /** * Runtime-facing description of one compound InnerBlocks preset. */ export interface CompoundInnerBlocksPresetDefinition { description: string; directInsert: boolean; label: string; orientation?: CompoundInnerBlocksOrientation; templateLock: CompoundInnerBlocksTemplateLock; } /** * Canonical preset registry used by the CLI, generated scaffolds, and * interactive forms. */ export declare const COMPOUND_INNER_BLOCKS_PRESET_REGISTRY: { readonly freeform: { readonly description: 'Unlocked nested authoring with the default inserter and starter child template.'; readonly directInsert: false; readonly label: 'freeform'; readonly orientation: 'vertical'; readonly templateLock: false; }; readonly ordered: { readonly description: 'Vertical ordered flow that keeps starter structure fixed while allowing new sibling inserts.'; readonly directInsert: true; readonly label: 'ordered'; readonly orientation: 'vertical'; readonly templateLock: 'insert'; }; readonly horizontal: { readonly description: 'Horizontal nested layout with one-click direct inserts for row or tab style containers.'; readonly directInsert: true; readonly label: 'horizontal'; readonly orientation: 'horizontal'; readonly templateLock: false; }; readonly 'locked-structure': { readonly description: 'Locked starter structure for guided document shells where authors should only edit seeded children.'; readonly directInsert: false; readonly label: 'locked-structure'; readonly orientation: 'vertical'; readonly templateLock: 'all'; }; }; /** * Returns whether a string matches one of the supported compound preset ids. */ export declare function isCompoundInnerBlocksPresetId(value: string): value is CompoundInnerBlocksPresetId; /** * Parses a raw CLI or config value into a supported preset id. * * Returns `undefined` for non-string or empty input, and throws when the input * is a non-empty unsupported preset id. */ export declare function parseCompoundInnerBlocksPreset(value?: string): CompoundInnerBlocksPresetId | undefined; /** * Resolves an optional preset id to a concrete preset, defaulting to * `DEFAULT_COMPOUND_INNER_BLOCKS_PRESET_ID`. */ export declare function resolveCompoundInnerBlocksPreset(value?: CompoundInnerBlocksPresetId): CompoundInnerBlocksPresetId; /** * Looks up the preset definition for the provided preset id, applying the * default preset when the input is omitted. */ export declare function getCompoundInnerBlocksPresetDefinition(value?: CompoundInnerBlocksPresetId): CompoundInnerBlocksPresetDefinition;