import { VNode } from "preact"; export type SwissAttrs = Record; type Keys = { [K in keyof Attrs]: Attrs[K] extends (...args: unknown[]) => unknown ? never : K; }[keyof Attrs]; export type GetAttrs = Pick<{ [K in keyof Attrs]: Attrs[K] extends string ? Attrs[K] : string; }, Keys>; export type SwissName = N extends `${string}-${string}` ? N : `Switzerland: ${N} is an invalid custom element name`; export type SwissTree = (args: { attrs: GetAttrs; error: null | Error; }) => null | VNode; export type SwissEvent = AttrKeys extends `on${infer E}` ? E : never; export type DispatchEventPayload = Record; export type DispatchEventOptions = Record; export {}; //# sourceMappingURL=index.d.ts.map