export interface Change { path: string; type: "add" | "update" | "delete"; value?: any; functionName?: string; fileName?: string; id: string; from: "react" | "update" | "set"; } export declare const setListenToGet: (value: boolean) => void; export declare const getUsedStores: () => Set>; export declare const setUsedStores: (value: Set>) => void; export declare const addUsedStore: (value: GetSet) => void; export interface GetSetBubble { getState(): T; subscribe(callback: (changes: Change[]) => void): void; } export type BubbleReturnType = { [K in keyof T]: T[K] extends GetSetBubble ? U : T[K]; }; export type BubbleType = { getState: () => BubbleReturnType; subscribe: Function; reset: () => void; }; export type ValType = (newStateFn?: T | ((currentState: T) => void) | undefined, versionName?: string) => T; export type UpdateType = (updateFn: (currentState: T) => void, saveCurrentStateAs?: string) => T; export type SetType = (newStateFn: T | ((currentState: T) => T), saveCurrentStateAs?: string) => T; export type GetSet = { ___25304743758287906getset: boolean; get(): T; getState(): T; actions?: S | undefined; getSavedVersion: (versionName: string) => T; saveVersion: (versionName?: string) => void; reset: () => void; val: ValType; set(newStateFn: T | ((currentState: T) => T), saveCurrentStateAs?: string): T; update(updateFn: (currentState: T) => void, saveCurrentStateAs?: string): T; react(fn: (state: T, changes?: Change[]) => void, dependencyArrayFn: (state: T) => any[]): void; subscribe(callback: (changes: Change[], type: string) => void): () => void; }; type Func = (...args: T) => R; export declare function debounce(func: Func, delay: number): Func; export declare function getset(initialState: T, actions?: (getterSetter: { val: ValType; get: () => T; set: SetType; update: UpdateType; }) => S, config?: { deepFreeze: boolean; supportSettersAndInheritance: boolean; }): ValType & GetSet; export declare function i(initialState: T, setterFn: (currentState: T) => void, deepFreeze?: boolean): T; export declare const create: typeof getset; export declare const createState: typeof getset; export declare function getAllProps(instance: any): any[]; export declare function createBubble>(state: T): { getState: () => BubbleReturnType; subscribe: (fn: Function) => Function; get: () => BubbleReturnType; reset: () => void; set: (newStateOrFunction: Partial> | ((currentState: Partial>) => Partial>)) => BubbleReturnType; }; export declare function createUpdator(state: { getState: () => T; subscribe: any; actions?: any; setState?: any; reset?: any; }): (updatorFn: (currentState: T) => void) => T; export type MemoReturnType = { getState: () => T; subscribe: (fn: () => void) => () => void; value: T; get: () => T; }; export declare function createMemo(fn: () => T, deps?: () => any[]): MemoReturnType; export declare function createEffect(fn: () => void, deps?: () => any[]): void; export declare function recursiveDeepFreeze(obj: any): T; export declare const atom: typeof getset; export declare const molecule: typeof createBubble; export {};