hazelcast-client
Version:
Hazelcast - open source In-Memory Data Grid - client for NodeJS
26 lines (25 loc) • 1.15 kB
TypeScript
import * as Promise from 'bluebird';
import { DistributedObject } from '../DistributedObject';
import { IMapListener } from '../core/MapListener';
export interface MultiMap<K, V> extends DistributedObject {
put(key: K, value: V): Promise<boolean>;
get(key: K): Promise<Array<V>>;
remove(key: K, value: V): Promise<boolean>;
removeAll(key: K): Promise<Array<V>>;
keySet(): Promise<Array<K>>;
values(): Promise<Array<V>>;
entrySet(): Promise<Array<[K, V]>>;
containsKey(key: K): Promise<boolean>;
containsValue(value: V): Promise<boolean>;
containsEntry(key: K, value: V): Promise<boolean>;
size(): Promise<number>;
clear(): Promise<void>;
valueCount(key: K): Promise<number>;
addEntryListener(listener: IMapListener<K, V>, key?: K, includeValue?: boolean): Promise<string>;
removeEntryListener(listenerId: string): Promise<boolean>;
lock(key: K, leaseMillis?: number): Promise<void>;
isLocked(key: K): Promise<boolean>;
tryLock(key: K, timeoutMillis?: number, leaseMillis?: number): Promise<boolean>;
unlock(key: K): Promise<void>;
forceUnlock(key: K): Promise<void>;
}