import { ComponentResult, Emitable } from "./render.js"; import { DataSignal } from "./S.js"; declare type KeyedLife = { beforeUpdating: (cb: () => void) => void; afterUpdated: (cb: () => void) => void; }; export declare function keyed(keys: DataSignal, hooks: Renderer | Renderer["render"]): ComponentResult; interface Renderer { render(key: K): Emitable; hooks?(life: KeyedLife): void; } export declare function update(keys: any, { keys: old, refs: oldRefs }: { keys: any; refs: any; }, render: any, hooks: any, parentNodeRange: any, parentNode: any, nextSibling: any, placeHolderComment: any, hasIndices: any): { refs: any[]; keys: any; }; export {};