UNPKG

@geogirafe/lib-geoportal

Version:

GeoGirafe is a flexible application to build online geoportals.

30 lines (29 loc) 1.09 kB
import GirafeSingleton from '../../base/GirafeSingleton'; import State from './state'; import ConfigManager from '../configuration/configmanager'; export type Callback = (oldValue: any, value: any, parent?: any) => void | Promise<void>; declare class StateManager extends GirafeSingleton { #private; get state(): State; configManager: ConfigManager; constructor(type: string); private setDefaultValues; private onChange; subscribe(path: string, callback: Callback): Callback; subscribe(path: RegExp, callback: Callback): Callback; /** Unsubscribe one or multiple trackers by their callbacks. */ unsubscribe(callback: Callback): void; unsubscribe(callbacks: Callback[]): void; /** * Returns true if to object are deeply equal, false otherwise * Circular references are ignored */ private areEqual; private areNumbersEqual; private areNullOrUndefinedEqual; private areSimpleValuesEqual; private areCircularReferencesEqual; private areArraysEqual; private areObjectsEqual; } export default StateManager;