/**
 * `<block-ui>` — Generic padded / margined content wrapper. Applies a configurable
padding + margin scale via [padding] / [margin] attribute props,
mapping to the canonical spacing tokens. Use as a lightweight
spacing wrapper when <section-ui> would imply chrome the parent
container doesn't own. Not a layout primitive (no flex / grid) —
for layout use <col-ui> / <row-ui> / <stack-ui> / <grid-ui>.

 *
 * @see https://ui-kit.exe.xyz/site/components/block
 *
 * Type declarations generated by scripts/build/dts-codegen.mjs from
 * the component's `.a2ui.json` sidecar(s). Edit the source `.yaml`,
 * run `npm run build:components`, then `npm run codegen:dts` to
 * regenerate; or hand-author this file fully if rich event types are
 * needed beyond what the yaml `events:` block can express.
 */

import { UIElement } from '../../core/element.js';

export class UIBlock extends UIElement {
  /** Margin size (none/xs/sm/md/lg/xl). Accepts `@bp` notation: margin="none sm@md" = no margin below md, sm from md up. */
  margin: 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
  /** Padding amount (none/xs/sm/md/lg/xl → spacing tokens). Accepts `@bp` notation: padding="sm md@lg" = sm below lg, md from lg up. */
  padding: 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
}
