UNPKG

@valkey/client

Version:

The source code and documentation for this package are in the main [node-redis](https://github.com/redis/node-redis) repo.

43 lines (42 loc) 2 kB
/// <reference types="node" /> /// <reference types="node" /> import { ValkeyCommandArguments, ValkeyCommandRawReply } from "../commands"; import { ChannelListeners, PubSubListener, PubSubType, PubSubTypeListeners } from "./pub-sub"; export interface QueueCommandOptions { asap?: boolean; chainId?: symbol; signal?: AbortSignal; returnBuffers?: boolean; } export interface CommandWaitingToBeSent extends CommandWaitingForReply { args: ValkeyCommandArguments; chainId?: symbol; abort?: { signal: AbortSignal; listener(): void; }; } interface CommandWaitingForReply { resolve(reply?: unknown): void; reject(err: unknown): void; channelsCounter?: number; returnBuffers?: boolean; } export type OnShardedChannelMoved = (channel: string, listeners: ChannelListeners) => void; export default class ValkeyCommandsQueue { #private; get isPubSubActive(): boolean; constructor(maxLength: number | null | undefined, onShardedChannelMoved: OnShardedChannelMoved); addCommand<T = ValkeyCommandRawReply>(args: ValkeyCommandArguments, options?: QueueCommandOptions): Promise<T>; subscribe<T extends boolean>(type: PubSubType, channels: string | Array<string>, listener: PubSubListener<T>, returnBuffers?: T): Promise<void> | undefined; unsubscribe<T extends boolean>(type: PubSubType, channels?: string | Array<string>, listener?: PubSubListener<T>, returnBuffers?: T): Promise<void> | undefined; resubscribe(): Promise<any> | undefined; extendPubSubChannelListeners(type: PubSubType, channel: string, listeners: ChannelListeners): Promise<void> | undefined; extendPubSubListeners(type: PubSubType, listeners: PubSubTypeListeners): Promise<void> | undefined; getPubSubListeners(type: PubSubType): PubSubTypeListeners; getCommandToSend(): ValkeyCommandArguments | undefined; onReplyChunk(chunk: Buffer): void; flushWaitingForReply(err: Error): void; flushAll(err: Error): void; } export {};