export declare type CurriedCreateTagFunction = (tagName: string) => HyperScriptFunction; export interface CurriedCreateTagsFunction { (tagNames: T[]): HyperScriptHelperNamespace; (tagNames: T[], rootTag: T): HyperScriptHelperRootTag; } export interface HyperScriptFunction { (): Node; (text: string): Node; (data: NodeData): Node; (children: Node[]): Node; (selectorOrData: string | NodeData, text: string): Node; (selectorOrData: string | NodeData, children: Node[]): Node; (selector: string, data: NodeData): Node; (selector: string, data: NodeData, text: string): Node; (selector: string, data: NodeData, children: Node[]): Node; (selector: string, data?: NodeData, ...children: Node[]): Node; } export declare type HyperScriptHelperNamespace = { [K in T]: HyperScriptFunction; }; export declare type HyperScriptHelperRootTag = HyperScriptFunction & HyperScriptHelperNamespace;