hamok
Version:
Lightweight Distributed Object Storage on RAFT consensus algorithm
26 lines • 1.32 kB
TypeScript
export type BaseMapUpdateResult<K, V> = {
inserted: [K, V][];
updated: [K, oldvalue: V, newValue: V][];
};
export interface BaseMap<K, V> extends Map<K, V> {
getAll(keys: IterableIterator<K>): ReadonlyMap<K, V>;
set(key: K, value: V, callback?: (oldValue: V | undefined) => void): this;
setAll(entries: ReadonlyMap<K, V>, callback?: (result: BaseMapUpdateResult<K, V>) => void): this;
insert(key: K, value: V): V | undefined;
insertAll(entries: ReadonlyMap<K, V>): ReadonlyMap<K, V>;
deleteAll(keys: IterableIterator<K>): K[];
remove(key: K): V | undefined;
removeAll(keys: IterableIterator<K>): ReadonlyMap<K, V>;
}
export declare class MemoryBaseMap<K, V> extends Map<K, V> implements BaseMap<K, V> {
constructor(entries?: ReadonlyMap<K, V>);
getAll(keys: IterableIterator<K>): ReadonlyMap<K, V>;
set(key: K, value: V, callback?: (oldValue: V | undefined) => void): this;
setAll(entries: ReadonlyMap<K, V>, callback?: (result: BaseMapUpdateResult<K, V>) => void): this;
insert(key: K, value: V): V | undefined;
insertAll(entries: ReadonlyMap<K, V>): ReadonlyMap<K, V>;
deleteAll(keys: IterableIterator<K>): K[];
remove(key: K): V | undefined;
removeAll(keys: IterableIterator<K>): ReadonlyMap<K, V>;
}
//# sourceMappingURL=BaseMap.d.ts.map