/**
 * `<image-ui>` — Lazy-loading image with skeleton fallback. Shows skeleton while loading, falls back on error.
 *
 * @see https://ui-kit.exe.xyz/site/components/image
 *
 * 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 UIImage extends UIElement {
  /** Alt text for the image. */
  alt: string;
  /** Fallback image URL on error */
  fallback: string;
  /** Object-fit mode */
  fit: 'cover' | 'contain' | 'fill' | 'none';
  /** CSS height */
  height: string;
  /** Border radius token */
  radius: 'sm' | 'md' | 'lg' | 'full';
  /** Strip chrome (no background, no radius) for edge-to-edge rendering. */
  raw: boolean;
  /** Size preset — e.g. 'full' fills the container width and height. */
  size: string;
  /** Image source URL. */
  src: string;
  /** CSS width */
  width: string;
}
