/// import { RedisScriptConfig, SHA1 } from '../lua-script'; interface RedisCommandRawReplyArray extends Array { } export declare type RedisCommandRawReply = string | number | Buffer | null | undefined | RedisCommandRawReplyArray; export declare type RedisCommandArgument = string | Buffer; export declare type RedisCommandArguments = Array & { preserve?: unknown; }; export interface RedisCommand { FIRST_KEY_INDEX?: number | ((...args: Array) => RedisCommandArgument); IS_READ_ONLY?: boolean; transformArguments(this: void, ...args: Array): RedisCommandArguments; transformReply?(this: void, reply: any, preserved?: any): any; } export declare type RedisCommandReply = C['transformReply'] extends (...args: any) => infer T ? T : RedisCommandRawReply; export interface RedisCommands { [command: string]: RedisCommand; } export interface RedisModule { [command: string]: RedisCommand; } export interface RedisModules { [module: string]: RedisModule; } export declare type RedisScript = RedisScriptConfig & SHA1; export interface RedisScripts { [script: string]: RedisScript; } export interface RedisPlugins { modules?: M; scripts?: S; } export {};