NKWFGTCM6HM35MAJAREANFQS76ALYOD7K6FT77X5HQPBCRAPXVRAC export function updaterGenerator2Helper<T, W>(_dataObject: T, dataUpdater: UpdaterFn2<T, W>, wholeDataObject: W): UpdaterGeneratorType2<T, W> {
function updaterGenerator2Helper<T, W>(dataObject: T, dataUpdater: UpdaterFn2<T, W>): UpdaterGeneratorType2<T, W> {
updaters[key] = (updaterGenerator2Helper<T[typeof key], W>(dataObject[key], keyUpdater, wholeDataObject) as unknown as (typeof updaters)[typeof key]);
updaters[key] = (updaterGenerator2Helper<T[typeof key], W>(dataObject[key], keyUpdater) as unknown as (typeof updaters)[typeof key]);
export function updaterGenerator2<T>(dataObject: T, dataUpdater: UpdaterFn<T>): UpdaterGeneratorType2<T> {const dataUpdater2 = (arg: UpdaterFnParam2<T, T>) => {if (typeof arg === 'function') {dataUpdater((prev) => {
export function updaterGenerator2<T>(dataObject: T, setState: UpdaterFn<T>): UpdaterGeneratorType2<T> {const dataUpdater2 = (stateCallbackFunction: UpdaterFnParam2<T, T>) => {if (typeof stateCallbackFunction === 'function') {setState((prev: T) => {
/*** Usage:* class RenderedChunk {* constructor(stateUpdaterQueue) {* this.nodes = 0...10.map(i => new RenderedPointNode({texture, new NodeRef(i), stateUpdaterQueue}))* // this.nodes[0].render({ some, stuff })* this.nodes[0] should listen to gameState.playerUI.selectedPointNode and allocatedPointNodes, and* updating gameState.playerUI.selectedPointNode or gameState.playerSave.allocatedPointNodes or their* parents should trigger queueing of the rerender* or rather, rerendering* }* }*/