syncable-server
Version:
Syncable server.
11 lines (10 loc) • 452 B
TypeScript
export declare type ObjectQueueHandler<T> = (object: T) => void;
export declare type ObjectQueueFilter<T> = (object: T) => boolean;
export declare abstract class ObjectQueue<T> {
private channelToPendingObjectsMap;
add(object: T): void;
pause(channel: string): void;
resume(channel: string, filter?: ObjectQueueFilter<T>): void;
protected abstract emit(object: T): void;
protected abstract resolveChannel(_object: T): string;
}