export declare type ElementAttributes = Record & { style?: string | Partial; data?: Record; }; export declare type SArg = SVGElement | string | ElementAttributes; export declare type HArg = Node | string | ElementAttributes; export interface StrictSelect { (selectors: K, el?: ParentNode): HTMLElementTagNameMap[K]; (selectors: K, el?: ParentNode): SVGElementTagNameMap[K]; (selectors: string, el?: ParentNode): E; } export interface H { (name: K, ...args: HArg[]): HTMLElementTagNameMap[K]; (name: string, ...args: HArg[]): HTMLElement; } export declare type CreateTag = (...args: HArg[]) => HTMLElementTagNameMap[K];