import { Redis as RedisDriver } from 'ioredis'; export declare class Redis { driver: RedisDriver; namespace?: string; constructor(opts: RedisOptions); withNamespace(namespace: string): Redis; readStreams(streams: StreamRef[], opts: { count: number; blockMs?: number; }): Promise; addToStream(key: string, id: number | string, fields: [key: string, value: string | Buffer][]): Promise; addMultiToStream(evts: { key: string; id: number | string; fields: [key: string, value: string | Buffer][]; }[]): Promise<[error: Error | null, result: unknown][]>; trimStream(key: string, cursor: number | string): Promise; streamLengths(keys: string[]): Promise; get(key: string): Promise; set(key: string, val: string | number, ttlMs?: number): Promise; getMulti(keys: string[]): Promise<{}>; setMulti(vals: Record, ttlMs?: number): Promise; del(key: string): Promise; expire(key: string, seconds: number): Promise; zremrangebyscore(key: string, min: number, max: number): Promise; zcount(key: string, min: number, max: number): Promise; zadd(key: string, score: number, member: number | string): Promise; destroy(): Promise; ns(key: string): string; rmns(key: string): string; } type StreamRef = { key: string; cursor: string | number; }; type StreamOutput = { key: string; messages: { cursor: string; contents: Record; }[]; }; export type RedisOptions = ({ driver: RedisDriver; } | { host: string; } | { sentinel: string; hosts: string[]; }) & { password?: string; namespace?: string; db?: number; commandTimeout?: number; }; export declare function addressParts(addr: string, defaultPort?: number): { host: string; port: number; }; export {}; //# sourceMappingURL=redis.d.ts.map