// Minimal server-side component metadata for the standalone adapter. // Application action bindings and transport policy belong to the host. export type ComponentEvent = Readonly<{ name: string; __detail?: (detail: Detail) => Detail; }>; export type ComponentDefinition>> = Readonly<{ id: string; tag: string; events: Events; }>; export function event(name: string, _options?: { description?: string }): ComponentEvent { return Object.freeze({ name }); } export function defineComponent>>(definition: { id: string; tag: string; client?: { load: "eager" | "lazy" }; events?: Events; }): ComponentDefinition { return Object.freeze({ id: definition.id, tag: definition.tag, events: definition.events ?? ({} as Events) }); } export function componentAttrs(_component?: unknown, _values?: unknown): Record { return {}; }