import { type BlockRegistry } from "../registry.js"; import { type BlockSpec } from "../types.js"; /** * The full standard library spec set, in registration order: the fully pre-built * specs (checklist, table, code-tabs, html, tabs, columns) followed by the eight * dev-doc specs. This is the single list both the plan and content browser * registries register — adding a library block here lands in both apps. */ export declare const libraryBlockSpecs: BlockSpec[]; /** * Per-block metadata overrides for {@link registerLibraryBlocks}, keyed by the * canonical block `type`. Lets an app tweak the few fields that legitimately * differ (a `type` rename, a tweaked `description` or `empty` seed) without * re-authoring the spec. Anything omitted keeps the canonical value, so the * schema / MDX config and the React `Read`/`Edit` renderers always stay shared. */ export type LibraryBlockOverrides = Record, "type" | "label" | "description" | "empty">>>; /** * Register the standard library block specs into a {@link BlockRegistry}. Both * the plan and content browser registries call this, then register only their * own app-specific blocks on top — so the shared library lives in exactly one * place. Pass `overrides` (keyed by canonical `type`) for the small per-app * differences (content re-types `table` → `table-block`; each app phrases the * Mermaid description and seeds the OpenAPI example a little differently). */ export declare function registerLibraryBlocks(registry: BlockRegistry, options?: { overrides?: LibraryBlockOverrides; }): void; //# sourceMappingURL=specs.d.ts.map