UNPKG

@sajari/sdk-react

Version:
46 lines (45 loc) 1.41 kB
export declare type ValueFn = () => string; export declare type ValuesMap = Map<string, string | string[] | number | boolean | ValueFn>; export interface ValuesObject { [k: string]: string | string[] | number | boolean | ValueFn | undefined; } export declare type CallbackFn = (values: ValuesObject, set: (values: ValuesObject) => void) => void; export declare class Values { private values; private listeners; /** * Constructor for Values object. * @param values Initial values. */ constructor(values?: { [k: string]: string | string[] | number | boolean | ValueFn; }); /** * Register a listener for a specific event. * @param event Event to listen for * @param callback Callback to run when the event happens. */ listen(event: string, callback: CallbackFn): import("./listener").UnlistenFn; /** * Merge values into the value map. * * Set a value to undefined to remove it. */ set(values: ValuesObject): void; /** * get returns the current values. */ get(): { [k: string]: string; }; /** * Emits an event to notify listener that the values have been updated. * * @private */ private _emitUpdated; /** * Sets values without triggering an event, internal use only. */ private _set; }