import { Hooks } from "./hooks"; import { AttachData } from "./helpers/attachto"; import { VNodeStyle } from "./modules/style"; import { On } from "./modules/eventlisteners"; import { Attrs } from "./modules/attributes"; import { Classes } from "./modules/class"; import { Props } from "./modules/props"; import { Dataset } from "./modules/dataset"; export declare type Key = string | number | symbol; export interface VNode { sel: string | undefined; data: VNodeData | undefined; children: Array | undefined; elm: Node | undefined; text: string | undefined; key: Key | undefined; } export interface VNodeData { props?: Props; attrs?: Attrs; class?: Classes; style?: VNodeStyle; dataset?: Dataset; on?: On; attachData?: AttachData; hook?: Hooks; key?: Key; ns?: string; fn?: () => VNode; args?: any[]; is?: string; [key: string]: any; } export declare function vnode(sel: string | undefined, data: any | undefined, children: Array | undefined, text: string | undefined, elm: Element | DocumentFragment | Text | undefined): VNode;