import type { HTML } from './html.js'; type JSXElementConstructor

= (props: P) => OsmosNode; export type OsmosElement

| symbol = string | JSXElementConstructor | symbol> = { $$typeof: symbol; type: T; props: P; hash?: string; }; export type AwaitedOsmosNode = OsmosElement | string | number | bigint | Iterable | boolean | null | undefined; export type OsmosNode = OsmosElement | string | number | bigint | Iterable | boolean | null | undefined | Promise; export interface FunctionComponent

{ (props: P): OsmosNode; } export type FC

= FunctionComponent

; export type ComponentProps> = T extends JSXElementConstructor ? Props : T extends keyof JSX.IntrinsicElements ? JSX.IntrinsicElements[T] : {}; export type PropsWithChildren

= { children?: OsmosNode; } & P; declare global { namespace JSX { type ElementType

= string | JSXElementConstructor; interface Element extends OsmosElement { } interface ElementAttributesProperty { $props: {}; } interface ElementChildrenAttribute { children: {}; } interface IntrinsicAttributes { } interface IntrinsicElements extends HTML.Elements, HTML.SVGElements { } } } export {};