import { Store } from "./Store"; import { EleProps } from "./propHandlers"; export declare type ArrayWrapped = T extends any[] ? T : [T]; export declare type HProps

= Required<{ [K in keyof P]: K extends 'children' ? P extends { children: any; } ? /******/ ArrayWrapped : /******/ P extends { children?: any; } ? /**********/ ArrayWrapped | undefined : /**********/ unknown[] : P[K]; }>; export interface HDesc

{ state?: Array; context?: Array; init?: (this: HNode, props: HProps

, store: Store, context: Store) => void; render: (this: HNode, props: HProps

, store: Store, context: Store) => unknown; clear?: (this: HNode, props: HProps

, store: Store, context: Store) => void; catch?: (this: HNode, err: any, props: HProps

, store: Store, context: Store) => unknown; } export declare type EventRecord = [string, EventListener, boolean | AddEventListenerOptions]; export declare type EventMap = Map; export interface HNode

{ isHNode: true; type: unknown; desc?: HDesc; props: HProps

; store?: Store; context?: Store; owner?: HNode; ownerNode?: Node; output?: unknown[]; nodes?: Node[]; active: boolean; events?: EventMap; error?: unknown; } export declare const toNodes: (src: unknown, context: Store, ownerNode: Node, owner?: HNode | undefined) => Node[];