type MountableElement = Element | Document | ShadowRoot | DocumentFragment | Node; interface Runtime { insert(parent: MountableElement, accessor: any, marker?: Node | null, init?: any): any; spread(node: Element, accessor: any, isSVG?: Boolean, skipChildren?: Boolean): void; assign(node: Element, props: any, isSVG?: Boolean, skipChildren?: Boolean): void; createComponent(Comp: (props: any) => any, props: any): any; dynamicProperty(props: any, key: string): any; SVGElements: Set; } type ExpandableNode = Node & { [key: string]: any; }; export type HyperScript = { (...args: any[]): () => ExpandableNode | ExpandableNode[]; Fragment: (props: { children: (() => ExpandableNode) | (() => ExpandableNode)[]; }) => ExpandableNode[]; }; export declare function createHyperScript(r: Runtime): HyperScript; export {};