// AUTO-GENERATED by scripts/generate-wrappers.mjs — do not edit by hand. // Source: packages/core/manifest.json (component "gallery"). import type { ElementType, ReactNode } from 'react'; import { Gallery as GalleryController, type GalleryOptions } from '@42/core/gallery'; import { C42 } from '../C42'; const DEFAULT_HTML: string | null = "\n \n
\n \n \n \n \n
"; export interface GalleryProps extends Partial { /** Element/tag rendered as the controller root. Defaults to `"div"`. */ as?: ElementType; className?: string; children?: ReactNode; /** Fired on `gallery:open` — detail: `(no detail)` */ onOpen?: (detail: unknown, event: CustomEvent) => void; /** Fired on `gallery:close` — detail: `(no detail)` */ onClose?: (detail: unknown, event: CustomEvent) => void; /** Fired on `gallery:change` — detail: `{ index, src }` */ onChange?: (detail: unknown, event: CustomEvent) => void; /** Extra props are forwarded to the rendered `
` element. */ [key: string]: unknown; } export function Gallery(props: GalleryProps) { const { as, className, children, onOpen, onClose, onChange, loop, closeOnEscape, lockScroll, ...rest } = props; const options = { loop, closeOnEscape, lockScroll } as GalleryOptions; return ( {children as ReactNode} ); }