declare 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; } declare type ExpandableNode = Node & { [key: string]: any; }; export declare type HyperScript = { (...args: any[]): () => ExpandableNode | ExpandableNode[]; }; export declare function createHyperScript(r: Runtime): HyperScript; export {};