// Type definitions for ioredis // Project: https://github.com/luin/ioredis // Definitions by: York Yao // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /* =================== USAGE =================== import * as Redis from "ioredis"; var redis = new Redis(); =============================================== */ /// declare module "ioredis" { interface RedisStatic { new (port?: number, host?: string, options?: IORedis.RedisOptions): IORedis.Redis; new (host?: string, options?: IORedis.RedisOptions): IORedis.Redis; new (options: IORedis.RedisOptions): IORedis.Redis; new (url: string): IORedis.Redis; (port?: number, host?: string, options?: IORedis.RedisOptions): IORedis.Redis; (host?: string, options?: IORedis.RedisOptions): IORedis.Redis; (options: IORedis.RedisOptions): IORedis.Redis; (url: string): IORedis.Redis; Cluster: IORedis.Cluster; } var redis: RedisStatic; export = redis; } declare module IORedis { interface Commander { new (): Commander; getBuiltinCommands(): string[]; createBuiltinCommand(commandName: string): {}; defineCommand(name: string, definition: { numberOfKeys?: number; lua?: string; }): any; sendCommand(): void; } interface Redis extends NodeJS.EventEmitter, Commander { status: string; connect(callback?: Function): Promise; disconnect(): void; duplicate(): Redis; monitor(calback: (error: Error, monitor: NodeJS.EventEmitter) => void): Promise; send_command(command: string, ...args: any[]): any; auth(password: string, callback?: ResCallbackT): any; ping(callback?: ResCallbackT): any; append(key: string, value: string, callback?: ResCallbackT): any; bitcount(key: string, callback?: ResCallbackT): any; bitcount(key: string, start: number, end: number, callback?: ResCallbackT): any; set(key: string, value: string, callback?: ResCallbackT): any; get(key: string, callback?: ResCallbackT): any; exists(key: string, value: string, callback?: ResCallbackT): any; publish(channel: string, value: any): any; subscribe(channel: string): any; get(args: any[], callback?: ResCallbackT): any; get(...args: any[]): any; getBuffer(key: string, callback?: ResCallbackT): any; set(args: any[], callback?: ResCallbackT): any; set(...args: any[]): any; setnx(args: any[], callback?: ResCallbackT): any; setnx(...args: any[]): any; setex(args: any[], callback?: ResCallbackT): any; setex(...args: any[]): any; append(args: any[], callback?: ResCallbackT): any; append(...args: any[]): any; strlen(args: any[], callback?: ResCallbackT): any; strlen(...args: any[]): any; del(args: any[], callback?: ResCallbackT): any; del(...args: any[]): any; exists(args: any[], callback?: ResCallbackT): any; exists(...args: any[]): any; setbit(args: any[], callback?: ResCallbackT): any; setbit(...args: any[]): any; getbit(args: any[], callback?: ResCallbackT): any; getbit(...args: any[]): any; setrange(args: any[], callback?: ResCallbackT): any; setrange(...args: any[]): any; getrange(args: any[], callback?: ResCallbackT): any; getrange(...args: any[]): any; substr(args: any[], callback?: ResCallbackT): any; substr(...args: any[]): any; incr(args: any[], callback?: ResCallbackT): any; incr(...args: any[]): any; decr(args: any[], callback?: ResCallbackT): any; decr(...args: any[]): any; mget(args: any[], callback?: ResCallbackT): any; mget(...args: any[]): any; rpush(...args: any[]): any; lpush(args: any[], callback?: ResCallbackT): any; lpush(...args: any[]): any; rpushx(args: any[], callback?: ResCallbackT): any; rpushx(...args: any[]): any; lpushx(args: any[], callback?: ResCallbackT): any; lpushx(...args: any[]): any; linsert(args: any[], callback?: ResCallbackT): any; linsert(...args: any[]): any; rpop(args: any[], callback?: ResCallbackT): any; rpop(...args: any[]): any; lpop(args: any[], callback?: ResCallbackT): any; lpop(...args: any[]): any; brpop(args: any[], callback?: ResCallbackT): any; brpop(...args: any[]): any; brpoplpush(args: any[], callback?: ResCallbackT): any; brpoplpush(...args: any[]): any; blpop(args: any[], callback?: ResCallbackT): any; blpop(...args: any[]): any; llen(args: any[], callback?: ResCallbackT): any; llen(...args: any[]): any; lindex(args: any[], callback?: ResCallbackT): any; lindex(...args: any[]): any; lset(args: any[], callback?: ResCallbackT): any; lset(...args: any[]): any; lrange(args: any[], callback?: ResCallbackT): any; lrange(...args: any[]): any; ltrim(args: any[], callback?: ResCallbackT): any; ltrim(...args: any[]): any; lrem(args: any[], callback?: ResCallbackT): any; lrem(...args: any[]): any; rpoplpush(args: any[], callback?: ResCallbackT): any; rpoplpush(...args: any[]): any; sadd(args: any[], callback?: ResCallbackT): any; sadd(...args: any[]): any; srem(args: any[], callback?: ResCallbackT): any; srem(...args: any[]): any; smove(args: any[], callback?: ResCallbackT): any; smove(...args: any[]): any; sismember(args: any[], callback?: ResCallbackT): any; sismember(...args: any[]): any; scard(args: any[], callback?: ResCallbackT): any; scard(...args: any[]): any; spop(args: any[], callback?: ResCallbackT): any; spop(...args: any[]): any; srandmember(args: any[], callback?: ResCallbackT): any; srandmember(...args: any[]): any; sinter(args: any[], callback?: ResCallbackT): any; sinter(...args: any[]): any; sinterstore(args: any[], callback?: ResCallbackT): any; sinterstore(...args: any[]): any; sunion(args: any[], callback?: ResCallbackT): any; sunion(...args: any[]): any; sunionstore(args: any[], callback?: ResCallbackT): any; sunionstore(...args: any[]): any; sdiff(args: any[], callback?: ResCallbackT): any; sdiff(...args: any[]): any; sdiffstore(args: any[], callback?: ResCallbackT): any; sdiffstore(...args: any[]): any; smembers(args: any[], callback?: ResCallbackT): any; smembers(...args: any[]): any; zadd(args: any[], callback?: ResCallbackT): any; zadd(...args: any[]): any; zincrby(args: any[], callback?: ResCallbackT): any; zincrby(...args: any[]): any; zrem(args: any[], callback?: ResCallbackT): any; zrem(...args: any[]): any; zremrangebyscore(args: any[], callback?: ResCallbackT): any; zremrangebyscore(...args: any[]): any; zremrangebyrank(args: any[], callback?: ResCallbackT): any; zremrangebyrank(...args: any[]): any; zunionstore(args: any[], callback?: ResCallbackT): any; zunionstore(...args: any[]): any; zinterstore(args: any[], callback?: ResCallbackT): any; zinterstore(...args: any[]): any; zrange(args: any[], callback?: ResCallbackT): any; zrange(...args: any[]): any; zrangebyscore(args: any[], callback?: ResCallbackT): any; zrangebyscore(...args: any[]): any; zrevrangebyscore(args: any[], callback?: ResCallbackT): any; zrevrangebyscore(...args: any[]): any; zcount(args: any[], callback?: ResCallbackT): any; zcount(...args: any[]): any; zrevrange(args: any[], callback?: ResCallbackT): any; zrevrange(...args: any[]): any; zcard(args: any[], callback?: ResCallbackT): any; zcard(...args: any[]): any; zscore(args: any[], callback?: ResCallbackT): any; zscore(...args: any[]): any; zrank(args: any[], callback?: ResCallbackT): any; zrank(...args: any[]): any; zrevrank(args: any[], callback?: ResCallbackT): any; zrevrank(...args: any[]): any; hset(args: any[], callback?: ResCallbackT): any; hset(...args: any[]): any; hsetnx(args: any[], callback?: ResCallbackT): any; hsetnx(...args: any[]): any; hget(args: any[], callback?: ResCallbackT): any; hget(...args: any[]): any; hmset(args: any[], callback?: ResCallbackT): any; hmset(key: string, hash: any, callback?: ResCallbackT): any; hmset(...args: any[]): any; hmget(args: any[], callback?: ResCallbackT): any; hmget(...args: any[]): any; hincrby(args: any[], callback?: ResCallbackT): any; hincrby(...args: any[]): any; hincrbyfloat(args: any[], callback?: ResCallbackT): any; hincrbyfloat(...args: any[]): any; hdel(args: any[], callback?: ResCallbackT): any; hdel(...args: any[]): any; hlen(args: any[], callback?: ResCallbackT): any; hlen(...args: any[]): any; hkeys(args: any[], callback?: ResCallbackT): any; hkeys(...args: any[]): any; hvals(args: any[], callback?: ResCallbackT): any; hvals(...args: any[]): any; hgetall(args: any[], callback?: ResCallbackT): any; hgetall(...args: any[]): any; hgetall(key: string, callback?: ResCallbackT): any; hexists(args: any[], callback?: ResCallbackT): any; hexists(...args: any[]): any; incrby(args: any[], callback?: ResCallbackT): any; incrby(...args: any[]): any; decrby(args: any[], callback?: ResCallbackT): any; decrby(...args: any[]): any; getset(args: any[], callback?: ResCallbackT): any; getset(...args: any[]): any; mset(args: any[], callback?: ResCallbackT): any; mset(...args: any[]): any; msetnx(args: any[], callback?: ResCallbackT): any; msetnx(...args: any[]): any; randomkey(args: any[], callback?: ResCallbackT): any; randomkey(...args: any[]): any; select(args: any[], callback?: ResCallbackT): void; select(...args: any[]): void; move(args: any[], callback?: ResCallbackT): any; move(...args: any[]): any; rename(args: any[], callback?: ResCallbackT): any; rename(...args: any[]): any; renamenx(args: any[], callback?: ResCallbackT): any; renamenx(...args: any[]): any; expire(args: any[], callback?: ResCallbackT): any; expire(...args: any[]): any; pexpire(args: any[], callback?: ResCallbackT): any; pexpire(...args: any[]): any; expireat(args: any[], callback?: ResCallbackT): any; expireat(...args: any[]): any; pexpireat(args: any[], callback?: ResCallbackT): any; pexpireat(...args: any[]): any; keys(args: any[], callback?: ResCallbackT): any; keys(...args: any[]): any; dbsize(args: any[], callback?: ResCallbackT): any; dbsize(...args: any[]): any; auth(args: any[], callback?: ResCallbackT): void; auth(...args: any[]): void; ping(args: any[], callback?: ResCallbackT): any; ping(...args: any[]): any; echo(args: any[], callback?: ResCallbackT): any; echo(...args: any[]): any; save(args: any[], callback?: ResCallbackT): any; save(...args: any[]): any; bgsave(args: any[], callback?: ResCallbackT): any; bgsave(...args: any[]): any; bgrewriteaof(args: any[], callback?: ResCallbackT): any; bgrewriteaof(...args: any[]): any; shutdown(args: any[], callback?: ResCallbackT): any; shutdown(...args: any[]): any; lastsave(args: any[], callback?: ResCallbackT): any; lastsave(...args: any[]): any; type(args: any[], callback?: ResCallbackT): any; type(...args: any[]): any; multi(args: any[], callback?: ResCallbackT): Pipeline; multi(...args: any[]): Pipeline; exec(args: any[], callback?: ResCallbackT): any; exec(...args: any[]): any; discard(args: any[], callback?: ResCallbackT): any; discard(...args: any[]): any; sync(args: any[], callback?: ResCallbackT): any; sync(...args: any[]): any; flushdb(args: any[], callback?: ResCallbackT): any; flushdb(...args: any[]): any; flushall(args: any[], callback?: ResCallbackT): any; flushall(...args: any[]): any; sort(args: any[], callback?: ResCallbackT): any; sort(...args: any[]): any; info(args: any[], callback?: ResCallbackT): any; info(...args: any[]): any; monitor(args: any[], callback?: ResCallbackT): any; monitor(...args: any[]): any; ttl(args: any[], callback?: ResCallbackT): any; ttl(...args: any[]): any; persist(args: any[], callback?: ResCallbackT): any; persist(...args: any[]): any; slaveof(args: any[], callback?: ResCallbackT): any; slaveof(...args: any[]): any; debug(args: any[], callback?: ResCallbackT): any; debug(...args: any[]): any; config(args: any[], callback?: ResCallbackT): any; config(...args: any[]): any; subscribe(args: any[], callback?: ResCallbackT): any; subscribe(...args: any[]): any; unsubscribe(args: any[], callback?: ResCallbackT): any; unsubscribe(...args: any[]): any; psubscribe(args: any[], callback?: ResCallbackT): any; psubscribe(...args: any[]): any; punsubscribe(args: any[], callback?: ResCallbackT): any; punsubscribe(...args: any[]): any; publish(args: any[], callback?: ResCallbackT): any; publish(...args: any[]): any; watch(args: any[], callback?: ResCallbackT): any; watch(...args: any[]): any; unwatch(args: any[], callback?: ResCallbackT): any; unwatch(...args: any[]): any; cluster(args: any[], callback?: ResCallbackT): any; cluster(...args: any[]): any; restore(args: any[], callback?: ResCallbackT): any; restore(...args: any[]): any; migrate(args: any[], callback?: ResCallbackT): any; migrate(...args: any[]): any; dump(args: any[], callback?: ResCallbackT): any; dump(...args: any[]): any; object(args: any[], callback?: ResCallbackT): any; object(...args: any[]): any; client(args: any[], callback?: ResCallbackT): any; client(...args: any[]): any; eval(args: any[], callback?: ResCallbackT): any; eval(...args: any[]): any; evalsha(args: any[], callback?: ResCallbackT): any; evalsha(...args: any[]): any; script(args: any[], callback?: ResCallbackT): any; script(...args: any[]): any; script(key: string, callback?: ResCallbackT): any; quit(args: any[], callback?: ResCallbackT): any; quit(...args: any[]): any; scan(...args: any[]): any; scan(args: any[], callback?: ResCallbackT): any; hscan(...args: any[]): any; hscan(args: any[], callback?: ResCallbackT): any; zscan(...args: any[]): any; zscan(args: any[], callback?: ResCallbackT): any; pipeline(): Pipeline; pipeline(commands: string[][]): Pipeline; scanStream(options?: IORedis.ScanStreamOption): NodeJS.EventEmitter; hscanStream(key: string, options?: IORedis.ScanStreamOption): NodeJS.EventEmitter; } interface Pipeline { exec(callback?: ResCallbackT): any; get(args: any[], callback?: ResCallbackT): Pipeline; get(...args: any[]): Pipeline; set(args: any[], callback?: ResCallbackT): Pipeline; set(...args: any[]): Pipeline; setnx(args: any[], callback?: ResCallbackT): Pipeline; setnx(...args: any[]): Pipeline; setex(args: any[], callback?: ResCallbackT): Pipeline; setex(...args: any[]): Pipeline; append(args: any[], callback?: ResCallbackT): Pipeline; append(...args: any[]): Pipeline; strlen(args: any[], callback?: ResCallbackT): Pipeline; strlen(...args: any[]): Pipeline; del(args: any[], callback?: ResCallbackT): Pipeline; del(...args: any[]): Pipeline; exists(args: any[], callback?: ResCallbackT): Pipeline; exists(...args: any[]): Pipeline; setbit(args: any[], callback?: ResCallbackT): Pipeline; setbit(...args: any[]): Pipeline; getbit(args: any[], callback?: ResCallbackT): Pipeline; getbit(...args: any[]): Pipeline; setrange(args: any[], callback?: ResCallbackT): Pipeline; setrange(...args: any[]): Pipeline; getrange(args: any[], callback?: ResCallbackT): Pipeline; getrange(...args: any[]): Pipeline; substr(args: any[], callback?: ResCallbackT): Pipeline; substr(...args: any[]): Pipeline; incr(args: any[], callback?: ResCallbackT): Pipeline; incr(...args: any[]): Pipeline; decr(args: any[], callback?: ResCallbackT): Pipeline; decr(...args: any[]): Pipeline; mget(args: any[], callback?: ResCallbackT): Pipeline; mget(...args: any[]): Pipeline; rpush(...args: any[]): Pipeline; lpush(args: any[], callback?: ResCallbackT): Pipeline; lpush(...args: any[]): Pipeline; rpushx(args: any[], callback?: ResCallbackT): Pipeline; rpushx(...args: any[]): Pipeline; lpushx(args: any[], callback?: ResCallbackT): Pipeline; lpushx(...args: any[]): Pipeline; linsert(args: any[], callback?: ResCallbackT): Pipeline; linsert(...args: any[]): Pipeline; rpop(args: any[], callback?: ResCallbackT): Pipeline; rpop(...args: any[]): Pipeline; lpop(args: any[], callback?: ResCallbackT): Pipeline; lpop(...args: any[]): Pipeline; brpop(args: any[], callback?: ResCallbackT): Pipeline; brpop(...args: any[]): Pipeline; brpoplpush(args: any[], callback?: ResCallbackT): Pipeline; brpoplpush(...args: any[]): Pipeline; blpop(args: any[], callback?: ResCallbackT): Pipeline; blpop(...args: any[]): Pipeline; llen(args: any[], callback?: ResCallbackT): Pipeline; llen(...args: any[]): Pipeline; lindex(args: any[], callback?: ResCallbackT): Pipeline; lindex(...args: any[]): Pipeline; lset(args: any[], callback?: ResCallbackT): Pipeline; lset(...args: any[]): Pipeline; lrange(args: any[], callback?: ResCallbackT): Pipeline; lrange(...args: any[]): Pipeline; ltrim(args: any[], callback?: ResCallbackT): Pipeline; ltrim(...args: any[]): Pipeline; lrem(args: any[], callback?: ResCallbackT): Pipeline; lrem(...args: any[]): Pipeline; rpoplpush(args: any[], callback?: ResCallbackT): Pipeline; rpoplpush(...args: any[]): Pipeline; sadd(args: any[], callback?: ResCallbackT): Pipeline; sadd(...args: any[]): Pipeline; srem(args: any[], callback?: ResCallbackT): Pipeline; srem(...args: any[]): Pipeline; smove(args: any[], callback?: ResCallbackT): Pipeline; smove(...args: any[]): Pipeline; sismember(args: any[], callback?: ResCallbackT): Pipeline; sismember(...args: any[]): Pipeline; scard(args: any[], callback?: ResCallbackT): Pipeline; scard(...args: any[]): Pipeline; spop(args: any[], callback?: ResCallbackT): Pipeline; spop(...args: any[]): Pipeline; srandmember(args: any[], callback?: ResCallbackT): Pipeline; srandmember(...args: any[]): Pipeline; sinter(args: any[], callback?: ResCallbackT): Pipeline; sinter(...args: any[]): Pipeline; sinterstore(args: any[], callback?: ResCallbackT): Pipeline; sinterstore(...args: any[]): Pipeline; sunion(args: any[], callback?: ResCallbackT): Pipeline; sunion(...args: any[]): Pipeline; sunionstore(args: any[], callback?: ResCallbackT): Pipeline; sunionstore(...args: any[]): Pipeline; sdiff(args: any[], callback?: ResCallbackT): Pipeline; sdiff(...args: any[]): Pipeline; sdiffstore(args: any[], callback?: ResCallbackT): Pipeline; sdiffstore(...args: any[]): Pipeline; smembers(args: any[], callback?: ResCallbackT): Pipeline; smembers(...args: any[]): Pipeline; zadd(args: any[], callback?: ResCallbackT): Pipeline; zadd(...args: any[]): Pipeline; zincrby(args: any[], callback?: ResCallbackT): Pipeline; zincrby(...args: any[]): Pipeline; zrem(args: any[], callback?: ResCallbackT): Pipeline; zrem(...args: any[]): Pipeline; zremrangebyscore(args: any[], callback?: ResCallbackT): Pipeline; zremrangebyscore(...args: any[]): Pipeline; zremrangebyrank(args: any[], callback?: ResCallbackT): Pipeline; zremrangebyrank(...args: any[]): Pipeline; zunionstore(args: any[], callback?: ResCallbackT): Pipeline; zunionstore(...args: any[]): Pipeline; zinterstore(args: any[], callback?: ResCallbackT): Pipeline; zinterstore(...args: any[]): Pipeline; zrange(args: any[], callback?: ResCallbackT): Pipeline; zrange(...args: any[]): Pipeline; zrangebyscore(args: any[], callback?: ResCallbackT): Pipeline; zrangebyscore(...args: any[]): Pipeline; zrevrangebyscore(args: any[], callback?: ResCallbackT): Pipeline; zrevrangebyscore(...args: any[]): Pipeline; zcount(args: any[], callback?: ResCallbackT): Pipeline; zcount(...args: any[]): Pipeline; zrevrange(args: any[], callback?: ResCallbackT): Pipeline; zrevrange(...args: any[]): Pipeline; zcard(args: any[], callback?: ResCallbackT): Pipeline; zcard(...args: any[]): Pipeline; zscore(args: any[], callback?: ResCallbackT): Pipeline; zscore(...args: any[]): Pipeline; zrank(args: any[], callback?: ResCallbackT): Pipeline; zrank(...args: any[]): Pipeline; zrevrank(args: any[], callback?: ResCallbackT): Pipeline; zrevrank(...args: any[]): Pipeline; hset(args: any[], callback?: ResCallbackT): Pipeline; hset(...args: any[]): Pipeline; hsetnx(args: any[], callback?: ResCallbackT): Pipeline; hsetnx(...args: any[]): Pipeline; hget(args: any[], callback?: ResCallbackT): Pipeline; hget(...args: any[]): Pipeline; hmset(args: any[], callback?: ResCallbackT): Pipeline; hmset(key: string, hash: any, callback?: ResCallbackT): Pipeline; hmset(...args: any[]): Pipeline; hmget(args: any[], callback?: ResCallbackT): Pipeline; hmget(...args: any[]): Pipeline; hincrby(args: any[], callback?: ResCallbackT): Pipeline; hincrby(...args: any[]): Pipeline; hincrbyfloat(args: any[], callback?: ResCallbackT): Pipeline; hincrbyfloat(...args: any[]): Pipeline; hdel(args: any[], callback?: ResCallbackT): Pipeline; hdel(...args: any[]): Pipeline; hlen(args: any[], callback?: ResCallbackT): Pipeline; hlen(...args: any[]): Pipeline; hkeys(args: any[], callback?: ResCallbackT): Pipeline; hkeys(...args: any[]): Pipeline; hvals(args: any[], callback?: ResCallbackT): Pipeline; hvals(...args: any[]): Pipeline; hgetall(args: any[], callback?: ResCallbackT): Pipeline; hgetall(...args: any[]): Pipeline; hgetall(key: string, callback?: ResCallbackT): Pipeline; hexists(args: any[], callback?: ResCallbackT): Pipeline; hexists(...args: any[]): Pipeline; incrby(args: any[], callback?: ResCallbackT): Pipeline; incrby(...args: any[]): Pipeline; decrby(args: any[], callback?: ResCallbackT): Pipeline; decrby(...args: any[]): Pipeline; getset(args: any[], callback?: ResCallbackT): Pipeline; getset(...args: any[]): Pipeline; mset(args: any[], callback?: ResCallbackT): Pipeline; mset(...args: any[]): Pipeline; msetnx(args: any[], callback?: ResCallbackT): Pipeline; msetnx(...args: any[]): Pipeline; randomkey(args: any[], callback?: ResCallbackT): Pipeline; randomkey(...args: any[]): Pipeline; select(args: any[], callback?: ResCallbackT): void; select(...args: any[]): Pipeline; move(args: any[], callback?: ResCallbackT): Pipeline; move(...args: any[]): Pipeline; rename(args: any[], callback?: ResCallbackT): Pipeline; rename(...args: any[]): Pipeline; renamenx(args: any[], callback?: ResCallbackT): Pipeline; renamenx(...args: any[]): Pipeline; expire(args: any[], callback?: ResCallbackT): Pipeline; expire(...args: any[]): Pipeline; pexpire(args: any[], callback?: ResCallbackT): Pipeline; pexpire(...args: any[]): Pipeline; expireat(args: any[], callback?: ResCallbackT): Pipeline; expireat(...args: any[]): Pipeline; pexpireat(args: any[], callback?: ResCallbackT): Pipeline; pexpireat(...args: any[]): Pipeline; keys(args: any[], callback?: ResCallbackT): Pipeline; keys(...args: any[]): Pipeline; dbsize(args: any[], callback?: ResCallbackT): Pipeline; dbsize(...args: any[]): Pipeline; auth(args: any[], callback?: ResCallbackT): void; auth(...args: any[]): void; ping(args: any[], callback?: ResCallbackT): Pipeline; ping(...args: any[]): Pipeline; echo(args: any[], callback?: ResCallbackT): Pipeline; echo(...args: any[]): Pipeline; save(args: any[], callback?: ResCallbackT): Pipeline; save(...args: any[]): Pipeline; bgsave(args: any[], callback?: ResCallbackT): Pipeline; bgsave(...args: any[]): Pipeline; bgrewriteaof(args: any[], callback?: ResCallbackT): Pipeline; bgrewriteaof(...args: any[]): Pipeline; shutdown(args: any[], callback?: ResCallbackT): Pipeline; shutdown(...args: any[]): Pipeline; lastsave(args: any[], callback?: ResCallbackT): Pipeline; lastsave(...args: any[]): Pipeline; type(args: any[], callback?: ResCallbackT): Pipeline; type(...args: any[]): Pipeline; multi(args: any[], callback?: ResCallbackT): Pipeline; multi(...args: any[]): Pipeline; exec(args: any[], callback?: ResCallbackT): Pipeline; exec(...args: any[]): Pipeline; discard(args: any[], callback?: ResCallbackT): Pipeline; discard(...args: any[]): Pipeline; sync(args: any[], callback?: ResCallbackT): Pipeline; sync(...args: any[]): Pipeline; flushdb(args: any[], callback?: ResCallbackT): Pipeline; flushdb(...args: any[]): Pipeline; flushall(args: any[], callback?: ResCallbackT): Pipeline; flushall(...args: any[]): Pipeline; sort(args: any[], callback?: ResCallbackT): Pipeline; sort(...args: any[]): Pipeline; info(args: any[], callback?: ResCallbackT): Pipeline; info(...args: any[]): Pipeline; monitor(args: any[], callback?: ResCallbackT): Pipeline; monitor(...args: any[]): Pipeline; ttl(args: any[], callback?: ResCallbackT): Pipeline; ttl(...args: any[]): Pipeline; persist(args: any[], callback?: ResCallbackT): Pipeline; persist(...args: any[]): Pipeline; slaveof(args: any[], callback?: ResCallbackT): Pipeline; slaveof(...args: any[]): Pipeline; debug(args: any[], callback?: ResCallbackT): Pipeline; debug(...args: any[]): Pipeline; config(args: any[], callback?: ResCallbackT): Pipeline; config(...args: any[]): Pipeline; subscribe(args: any[], callback?: ResCallbackT): Pipeline; subscribe(...args: any[]): Pipeline; unsubscribe(args: any[], callback?: ResCallbackT): Pipeline; unsubscribe(...args: any[]): Pipeline; psubscribe(args: any[], callback?: ResCallbackT): Pipeline; psubscribe(...args: any[]): Pipeline; punsubscribe(args: any[], callback?: ResCallbackT): Pipeline; punsubscribe(...args: any[]): Pipeline; publish(args: any[], callback?: ResCallbackT): Pipeline; publish(...args: any[]): Pipeline; watch(args: any[], callback?: ResCallbackT): Pipeline; watch(...args: any[]): Pipeline; unwatch(args: any[], callback?: ResCallbackT): Pipeline; unwatch(...args: any[]): Pipeline; cluster(args: any[], callback?: ResCallbackT): Pipeline; cluster(...args: any[]): Pipeline; restore(args: any[], callback?: ResCallbackT): Pipeline; restore(...args: any[]): Pipeline; migrate(args: any[], callback?: ResCallbackT): Pipeline; migrate(...args: any[]): Pipeline; dump(args: any[], callback?: ResCallbackT): Pipeline; dump(...args: any[]): Pipeline; object(args: any[], callback?: ResCallbackT): Pipeline; object(...args: any[]): Pipeline; client(args: any[], callback?: ResCallbackT): Pipeline; client(...args: any[]): Pipeline; eval(args: any[], callback?: ResCallbackT): Pipeline; eval(...args: any[]): Pipeline; evalsha(args: any[], callback?: ResCallbackT): Pipeline; evalsha(...args: any[]): Pipeline; quit(args: any[], callback?: ResCallbackT): Pipeline; quit(...args: any[]): Pipeline; scan(...args: any[]): Pipeline; scan(args: any[], callback?: ResCallbackT): Pipeline; hscan(...args: any[]): Pipeline; hscan(args: any[], callback?: ResCallbackT): Pipeline; zscan(...args: any[]): Pipeline; zscan(args: any[], callback?: ResCallbackT): Pipeline; } interface Cluster extends NodeJS.EventEmitter, Commander { new (nodes: { host: string; port: number; }[], options?: IORedis.ClusterOptions): Redis; connect(callback: Function): Promise; disconnect(): void; nodes(role: string): Redis[]; } interface ResCallbackT { (err: Error, res: R): void; } interface RedisOptions { port?: number; host?: string; /** * 4 (IPv4) or 6 (IPv6), Defaults to 4. */ family?: number; /** * Local domain socket path. If set the port, host and family will be ignored. */ path?: string; /** * TCP KeepAlive on the socket with a X ms delay before start. Set to a non-number value to disable keepAlive. */ keepAlive?: number; connectionName?: string; /** * If set, client will send AUTH command with the value of this option when connected. */ password?: string; /** * Database index to use. */ db?: number; /** * When a connection is established to the Redis server, the server might still be loading * the database from disk. While loading, the server not respond to any commands. * To work around this, when this option is true, ioredis will check the status of the Redis server, * and when the Redis server is able to process commands, a ready event will be emitted. */ enableReadyCheck?: boolean; keyPrefix?: string; retryStrategy?: (times: number) => number; reconnectOnError?: (error: Error) => boolean; /** * By default, if there is no active connection to the Redis server, commands are added to a queue * and are executed once the connection is "ready" (when enableReadyCheck is true, "ready" means * the Redis server has loaded the database from disk, otherwise means the connection to the Redis * server has been established). If this option is false, when execute the command when the connection * isn't ready, an error will be returned. */ enableOfflineQueue?: boolean; /** * The milliseconds before a timeout occurs during the initial connection to the Redis server. * default: 10000. */ connectTimeout?: number; /** * After reconnected, if the previous connection was in the subscriber mode, client will auto re-subscribe these channels. * default: true. */ autoResubscribe?: boolean; /** * If true, client will resend unfulfilled commands(e.g. block commands) in the previous connection when reconnected. * default: true. */ autoResendUnfulfilledCommands?: boolean; lazyConnect?: boolean; tls?: { ca: Buffer; }; sentinels?: { host: string; port: number; }[]; name?: string; /** * Enable READONLY mode for the connection. Only available for cluster mode. * default: false. */ readOnly?: boolean; /** * If you are using the hiredis parser, it's highly recommended to enable this option. Create another instance with dropBufferSupport disabled for other commands that you want to return binary instead of string: */ dropBufferSupport?: boolean; } interface ScanStreamOption { match?: string; count?: number; } interface ClusterOptions { clusterRetryStrategy?: (times: number) => number; enableOfflineQueue?: boolean; enableReadyCheck?: boolean; scaleReads?: string; maxRedirections?: number; retryDelayOnFailover?: number; retryDelayOnClusterDown?: number; retryDelayOnTryAgain?: number; redisOptions?: RedisOptions; } }