UNPKG

fluxel

Version:

An ultra-lightweight, high-performance library for efficient DOM building and dynamic web UIs

16 lines (15 loc) 931 B
import BaseFluxel from "./index.js"; import ReactiveDependency from "./reactiveDependency.js"; import type { ChildrenType, StateParam, FluxelJSXElement, CanBeReactive } from "./type.js"; interface MergeDependencies { <T, U, V>(dep0: ReactiveDependency<T>, dep1: ReactiveDependency<U>, dep2: ReactiveDependency<V>): ReactiveDependency<[T, U, V]>; <T, U>(dep0: ReactiveDependency<T>, dep1: ReactiveDependency<U>): ReactiveDependency<[T, U]>; <T>(...deps: ReactiveDependency<T>[]): ReactiveDependency<T[]>; } declare const Fluxel: typeof BaseFluxel & { reactive: <T extends object, R extends CanBeReactive<ChildrenType | FluxelJSXElement>>(initialState: T, renderer: (stateParam: StateParam<T>) => R) => R; schedule: (fn: () => void) => void; mergeDependencies: MergeDependencies; }; export declare const pureStateReservedKeys: readonly ["render", "use", "useWithMemo", "listenTarget"]; export default Fluxel;