UNPKG

iopa

Version:

API-first, Internet of Things (IoT) stack for Typescript, official implementation of the Internet Open Protocols Alliance (IOPA) reference pattern

30 lines 1.21 kB
import type { IMap, IRef } from '@iopa/types'; interface IIopaMap<T> { get<K extends keyof T>(key: K): T[K]; has<K extends keyof T>(key: K): boolean; set<K extends keyof T>(key: K, value: T[K]): any; set(value: IMapInit<any>): any; default<K extends keyof T>(key: K, valueFn: T[K] | (() => T[K])): T[K]; delete<K extends keyof T>(key: K): boolean; entries(): [any, any][]; toJSON(): any; } export declare type IMapInit<T> = Partial<T> | [keyof T, T[keyof T]][] | IopaMap<T>; export default class IopaMap<T> implements IMap<T> { private static readonly _BLACK_LIST_STRINGIFY; constructor(data?: IMapInit<T>, prevData?: IIopaMap<T>); get<K extends keyof T>(key: K): T[K]; set(value: IMapInit<T>): void; set<K extends keyof T>(key: K, value: T[K]): void; private _loadEntries; getRef(iRef: IRef<T>): T | undefined; has<K extends keyof T>(key: K): boolean; addRef<I extends T>(iRef: IRef<T>, value: I): I; delete<K extends keyof T>(key: K): boolean; default<K extends keyof T>(key: K, valueFn: T[K] | (() => T[K])): T[K]; entries(): [any, any][]; toString(): string; toJSON(): T; } export {}; //# sourceMappingURL=map.d.ts.map