@upstash/redis 1.34.6 → 1.34.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -308,6 +308,11 @@ declare class GeoAddCommand<TMemberType = string> extends Command<number | null,
308
308
  ], opts?: CommandOptions<number | null, number | null>);
309
309
  }
310
310
 
311
+ type ExpireOptions = "NX" | "nx" | "XX" | "xx" | "GT" | "gt" | "LT" | "lt";
312
+ declare class ExpireCommand extends Command<"0" | "1", 0 | 1> {
313
+ constructor(cmd: [key: string, seconds: number, option?: ExpireOptions], opts?: CommandOptions<"0" | "1", 0 | 1>);
314
+ }
315
+
311
316
  /**
312
317
  * @see https://redis.io/commands/append
313
318
  */
@@ -404,6 +409,13 @@ declare class EchoCommand extends Command<string, string> {
404
409
  constructor(cmd: [message: string], opts?: CommandOptions<string, string>);
405
410
  }
406
411
 
412
+ /**
413
+ * @see https://redis.io/commands/eval_ro
414
+ */
415
+ declare class EvalROCommand<TArgs extends unknown[], TData> extends Command<unknown, TData> {
416
+ constructor([script, keys, args]: [script: string, keys: string[], args: TArgs], opts?: CommandOptions<unknown, TData>);
417
+ }
418
+
407
419
  /**
408
420
  * @see https://redis.io/commands/eval
409
421
  */
@@ -411,6 +423,13 @@ declare class EvalCommand<TArgs extends unknown[], TData> extends Command<unknow
411
423
  constructor([script, keys, args]: [script: string, keys: string[], args: TArgs], opts?: CommandOptions<unknown, TData>);
412
424
  }
413
425
 
426
+ /**
427
+ * @see https://redis.io/commands/evalsha_ro
428
+ */
429
+ declare class EvalshaROCommand<TArgs extends unknown[], TData> extends Command<unknown, TData> {
430
+ constructor([sha, keys, args]: [sha: string, keys: string[], args?: TArgs], opts?: CommandOptions<unknown, TData>);
431
+ }
432
+
414
433
  /**
415
434
  * @see https://redis.io/commands/evalsha
416
435
  */
@@ -425,16 +444,11 @@ declare class ExistsCommand extends Command<number, number> {
425
444
  constructor(cmd: [...keys: string[]], opts?: CommandOptions<number, number>);
426
445
  }
427
446
 
428
- type ExpireOptions = "NX" | "nx" | "XX" | "xx" | "GT" | "gt" | "LT" | "lt";
429
- declare class ExpireCommand extends Command<"0" | "1", 0 | 1> {
430
- constructor(cmd: [key: string, seconds: number, option?: ExpireOptions], opts?: CommandOptions<"0" | "1", 0 | 1>);
431
- }
432
-
433
447
  /**
434
448
  * @see https://redis.io/commands/expireat
435
449
  */
436
450
  declare class ExpireAtCommand extends Command<"0" | "1", 0 | 1> {
437
- constructor(cmd: [key: string, unix: number], opts?: CommandOptions<"0" | "1", 0 | 1>);
451
+ constructor(cmd: [key: string, unix: number, option?: ExpireOptions], opts?: CommandOptions<"0" | "1", 0 | 1>);
438
452
  }
439
453
 
440
454
  /**
@@ -681,6 +695,15 @@ declare class HExistsCommand extends Command<number, number> {
681
695
  constructor(cmd: [key: string, field: string], opts?: CommandOptions<number, number>);
682
696
  }
683
697
 
698
+ declare class HExpireCommand extends Command<(-2 | 0 | 1 | 2)[], (-2 | 0 | 1 | 2)[]> {
699
+ constructor(cmd: [
700
+ key: string,
701
+ fields: (string | number) | (string | number)[],
702
+ seconds: number,
703
+ option?: ExpireOptions
704
+ ], opts?: CommandOptions<(-2 | 0 | 1 | 2)[], (-2 | 0 | 1 | 2)[]>);
705
+ }
706
+
684
707
  /**
685
708
  * @see https://redis.io/commands/hget
686
709
  */
@@ -894,6 +917,13 @@ declare class JsonGetCommand<TData extends (unknown | Record<string, unknown>) |
894
917
  ] | [key: string, ...path: string[]], opts?: CommandOptions<TData | null, TData | null>);
895
918
  }
896
919
 
920
+ /**
921
+ * @see https://redis.io/commands/json.merge
922
+ */
923
+ declare class JsonMergeCommand<TData extends string | number | Record<string, unknown> | Array<unknown>> extends Command<"OK" | null, "OK" | null> {
924
+ constructor(cmd: [key: string, path: string, value: TData], opts?: CommandOptions<"OK" | null, "OK" | null>);
925
+ }
926
+
897
927
  /**
898
928
  * @see https://redis.io/commands/json.mget
899
929
  */
@@ -1096,14 +1126,14 @@ declare class PersistCommand extends Command<"0" | "1", 0 | 1> {
1096
1126
  * @see https://redis.io/commands/pexpire
1097
1127
  */
1098
1128
  declare class PExpireCommand extends Command<"0" | "1", 0 | 1> {
1099
- constructor(cmd: [key: string, milliseconds: number], opts?: CommandOptions<"0" | "1", 0 | 1>);
1129
+ constructor(cmd: [key: string, milliseconds: number, option?: ExpireOptions], opts?: CommandOptions<"0" | "1", 0 | 1>);
1100
1130
  }
1101
1131
 
1102
1132
  /**
1103
1133
  * @see https://redis.io/commands/pexpireat
1104
1134
  */
1105
1135
  declare class PExpireAtCommand extends Command<"0" | "1", 0 | 1> {
1106
- constructor(cmd: [key: string, unix: number], opts?: CommandOptions<"0" | "1", 0 | 1>);
1136
+ constructor(cmd: [key: string, unix: number, option?: ExpireOptions], opts?: CommandOptions<"0" | "1", 0 | 1>);
1107
1137
  }
1108
1138
 
1109
1139
  /**
@@ -1885,10 +1915,18 @@ declare class Pipeline<TCommands extends Command<any, any>[] = []> {
1885
1915
  * @see https://redis.io/commands/echo
1886
1916
  */
1887
1917
  echo: (message: string) => Pipeline<[...TCommands, Command<any, string>]>;
1918
+ /**
1919
+ * @see https://redis.io/commands/eval_ro
1920
+ */
1921
+ evalRo: <TArgs extends unknown[], TData = unknown>(script: string, keys: string[], args: TArgs) => Pipeline<[...TCommands, Command<any, TData>]>;
1888
1922
  /**
1889
1923
  * @see https://redis.io/commands/eval
1890
1924
  */
1891
1925
  eval: <TArgs extends unknown[], TData = unknown>(script: string, keys: string[], args: TArgs) => Pipeline<[...TCommands, Command<any, TData>]>;
1926
+ /**
1927
+ * @see https://redis.io/commands/evalsha_ro
1928
+ */
1929
+ evalshaRo: <TArgs extends unknown[], TData = unknown>(sha1: string, keys: string[], args: TArgs) => Pipeline<[...TCommands, Command<any, TData>]>;
1892
1930
  /**
1893
1931
  * @see https://redis.io/commands/evalsha
1894
1932
  */
@@ -1900,11 +1938,11 @@ declare class Pipeline<TCommands extends Command<any, any>[] = []> {
1900
1938
  /**
1901
1939
  * @see https://redis.io/commands/expire
1902
1940
  */
1903
- expire: (key: string, seconds: number, option?: ("NX" | "nx" | "XX" | "xx" | "GT" | "gt" | "LT" | "lt") | undefined) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
1941
+ expire: (key: string, seconds: number, option?: ExpireOptions | undefined) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
1904
1942
  /**
1905
1943
  * @see https://redis.io/commands/expireat
1906
1944
  */
1907
- expireat: (key: string, unix: number) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
1945
+ expireat: (key: string, unix: number, option?: ExpireOptions | undefined) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
1908
1946
  /**
1909
1947
  * @see https://redis.io/commands/flushall
1910
1948
  */
@@ -2073,6 +2111,10 @@ declare class Pipeline<TCommands extends Command<any, any>[] = []> {
2073
2111
  * @see https://redis.io/commands/hexists
2074
2112
  */
2075
2113
  hexists: (key: string, field: string) => Pipeline<[...TCommands, Command<any, number>]>;
2114
+ /**
2115
+ * @see https://redis.io/commands/hexpire
2116
+ */
2117
+ hexpire: (key: string, fields: string | number | (string | number)[], seconds: number, option?: ExpireOptions | undefined) => Pipeline<[...TCommands, Command<any, (0 | 1 | 2 | -2)[]>]>;
2076
2118
  /**
2077
2119
  * @see https://redis.io/commands/hget
2078
2120
  */
@@ -2220,11 +2262,11 @@ declare class Pipeline<TCommands extends Command<any, any>[] = []> {
2220
2262
  /**
2221
2263
  * @see https://redis.io/commands/pexpire
2222
2264
  */
2223
- pexpire: (key: string, milliseconds: number) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
2265
+ pexpire: (key: string, milliseconds: number, option?: ExpireOptions | undefined) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
2224
2266
  /**
2225
2267
  * @see https://redis.io/commands/pexpireat
2226
2268
  */
2227
- pexpireat: (key: string, unix: number) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
2269
+ pexpireat: (key: string, unix: number, option?: ExpireOptions | undefined) => Pipeline<[...TCommands, Command<any, 0 | 1>]>;
2228
2270
  /**
2229
2271
  * @see https://redis.io/commands/pfadd
2230
2272
  */
@@ -2646,6 +2688,10 @@ declare class Pipeline<TCommands extends Command<any, any>[] = []> {
2646
2688
  * @see https://redis.io/commands/json.get
2647
2689
  */
2648
2690
  get: (...args: CommandArgs<typeof JsonGetCommand>) => Pipeline<[...TCommands, Command<any, any>]>;
2691
+ /**
2692
+ * @see https://redis.io/commands/json.merge
2693
+ */
2694
+ merge: (key: string, path: string, value: string | number | unknown[] | Record<string, unknown>) => Pipeline<[...TCommands, Command<any, "OK" | null>]>;
2649
2695
  /**
2650
2696
  * @see https://redis.io/commands/json.mget
2651
2697
  */
@@ -2745,6 +2791,48 @@ declare class Script<TResult = unknown> {
2745
2791
  private digest;
2746
2792
  }
2747
2793
 
2794
+ /**
2795
+ * Creates a new script.
2796
+ *
2797
+ * Scripts offer the ability to optimistically try to execute a script without having to send the
2798
+ * entire script to the server. If the script is loaded on the server, it tries again by sending
2799
+ * the entire script. Afterwards, the script is cached on the server.
2800
+ *
2801
+ * @example
2802
+ * ```ts
2803
+ * const redis = new Redis({...})
2804
+ *
2805
+ * const script = redis.createScript<string>("return ARGV[1];", { readOnly: true })
2806
+ * const arg1 = await script.evalRo([], ["Hello World"])
2807
+ * expect(arg1, "Hello World")
2808
+ * ```
2809
+ */
2810
+ declare class ScriptRO<TResult = unknown> {
2811
+ readonly script: string;
2812
+ readonly sha1: string;
2813
+ private readonly redis;
2814
+ constructor(redis: Redis, script: string);
2815
+ /**
2816
+ * Send an `EVAL_RO` command to redis.
2817
+ */
2818
+ evalRo(keys: string[], args: string[]): Promise<TResult>;
2819
+ /**
2820
+ * Calculates the sha1 hash of the script and then calls `EVALSHA_RO`.
2821
+ */
2822
+ evalshaRo(keys: string[], args: string[]): Promise<TResult>;
2823
+ /**
2824
+ * Optimistically try to run `EVALSHA_RO` first.
2825
+ * If the script is not loaded in redis, it will fall back and try again with `EVAL_RO`.
2826
+ *
2827
+ * Following calls will be able to use the cached script
2828
+ */
2829
+ exec(keys: string[], args: string[]): Promise<TResult>;
2830
+ /**
2831
+ * Compute the sha1 hash of the script and return its hex representation.
2832
+ */
2833
+ private digest;
2834
+ }
2835
+
2748
2836
  /**
2749
2837
  * Serverless redis client for upstash.
2750
2838
  */
@@ -2808,6 +2896,10 @@ declare class Redis {
2808
2896
  * @see https://redis.io/commands/json.get
2809
2897
  */
2810
2898
  get: <TData>(...args: CommandArgs<typeof JsonGetCommand>) => Promise<TData | null>;
2899
+ /**
2900
+ * @see https://redis.io/commands/json.merge
2901
+ */
2902
+ merge: (key: string, path: string, value: string | number | unknown[] | Record<string, unknown>) => Promise<"OK" | null>;
2811
2903
  /**
2812
2904
  * @see https://redis.io/commands/json.mget
2813
2905
  */
@@ -2871,7 +2963,37 @@ declare class Redis {
2871
2963
  * Technically this is not private, we can hide it from intellisense by doing this
2872
2964
  */
2873
2965
  protected addTelemetry: (telemetry: Telemetry) => void;
2874
- createScript(script: string): Script;
2966
+ /**
2967
+ * Creates a new script.
2968
+ *
2969
+ * Scripts offer the ability to optimistically try to execute a script without having to send the
2970
+ * entire script to the server. If the script is loaded on the server, it tries again by sending
2971
+ * the entire script. Afterwards, the script is cached on the server.
2972
+ *
2973
+ * @param script - The script to create
2974
+ * @param opts - Optional options to pass to the script `{ readonly?: boolean }`
2975
+ * @returns A new script
2976
+ *
2977
+ * @example
2978
+ * ```ts
2979
+ * const redis = new Redis({...})
2980
+ *
2981
+ * const script = redis.createScript<string>("return ARGV[1];")
2982
+ * const arg1 = await script.eval([], ["Hello World"])
2983
+ * expect(arg1, "Hello World")
2984
+ * ```
2985
+ * @example
2986
+ * ```ts
2987
+ * const redis = new Redis({...})
2988
+ *
2989
+ * const script = redis.createScript<string>("return ARGV[1];", { readonly: true })
2990
+ * const arg1 = await script.evalRo([], ["Hello World"])
2991
+ * expect(arg1, "Hello World")
2992
+ * ```
2993
+ */
2994
+ createScript<TResult = unknown, TReadonly extends boolean = false>(script: string, opts?: {
2995
+ readonly?: TReadonly;
2996
+ }): TReadonly extends true ? ScriptRO<TResult> : Script<TResult>;
2875
2997
  /**
2876
2998
  * Create a new pipeline that allows you to send requests in bulk.
2877
2999
  *
@@ -2950,10 +3072,18 @@ declare class Redis {
2950
3072
  * @see https://redis.io/commands/echo
2951
3073
  */
2952
3074
  echo: (message: string) => Promise<string>;
3075
+ /**
3076
+ * @see https://redis.io/commands/eval_ro
3077
+ */
3078
+ evalRo: <TArgs extends unknown[], TData = unknown>(script: string, keys: string[], args: TArgs) => Promise<TData>;
2953
3079
  /**
2954
3080
  * @see https://redis.io/commands/eval
2955
3081
  */
2956
3082
  eval: <TArgs extends unknown[], TData = unknown>(script: string, keys: string[], args: TArgs) => Promise<TData>;
3083
+ /**
3084
+ * @see https://redis.io/commands/evalsha_ro
3085
+ */
3086
+ evalshaRo: <TArgs extends unknown[], TData = unknown>(sha1: string, keys: string[], args: TArgs) => Promise<TData>;
2957
3087
  /**
2958
3088
  * @see https://redis.io/commands/evalsha
2959
3089
  */
@@ -2969,11 +3099,11 @@ declare class Redis {
2969
3099
  /**
2970
3100
  * @see https://redis.io/commands/expire
2971
3101
  */
2972
- expire: (key: string, seconds: number, option?: ("NX" | "nx" | "XX" | "xx" | "GT" | "gt" | "LT" | "lt") | undefined) => Promise<0 | 1>;
3102
+ expire: (key: string, seconds: number, option?: ExpireOptions | undefined) => Promise<0 | 1>;
2973
3103
  /**
2974
3104
  * @see https://redis.io/commands/expireat
2975
3105
  */
2976
- expireat: (key: string, unix: number) => Promise<0 | 1>;
3106
+ expireat: (key: string, unix: number, option?: ExpireOptions | undefined) => Promise<0 | 1>;
2977
3107
  /**
2978
3108
  * @see https://redis.io/commands/flushall
2979
3109
  */
@@ -3142,6 +3272,10 @@ declare class Redis {
3142
3272
  * @see https://redis.io/commands/hexists
3143
3273
  */
3144
3274
  hexists: (key: string, field: string) => Promise<number>;
3275
+ /**
3276
+ * @see https://redis.io/commands/hexpire
3277
+ */
3278
+ hexpire: (key: string, fields: string | number | (string | number)[], seconds: number, option?: ExpireOptions | undefined) => Promise<(0 | 1 | 2 | -2)[]>;
3145
3279
  /**
3146
3280
  * @see https://redis.io/commands/hget
3147
3281
  */
@@ -3293,11 +3427,11 @@ declare class Redis {
3293
3427
  /**
3294
3428
  * @see https://redis.io/commands/pexpire
3295
3429
  */
3296
- pexpire: (key: string, milliseconds: number) => Promise<0 | 1>;
3430
+ pexpire: (key: string, milliseconds: number, option?: ExpireOptions | undefined) => Promise<0 | 1>;
3297
3431
  /**
3298
3432
  * @see https://redis.io/commands/pexpireat
3299
3433
  */
3300
- pexpireat: (key: string, unix: number) => Promise<0 | 1>;
3434
+ pexpireat: (key: string, unix: number, option?: ExpireOptions | undefined) => Promise<0 | 1>;
3301
3435
  /**
3302
3436
  * @see https://redis.io/commands/pfadd
3303
3437
  */
@@ -3724,4 +3858,4 @@ declare class ZMScoreCommand<TData> extends Command<string[] | null, number[] |
3724
3858
  constructor(cmd: [key: string, members: TData[]], opts?: CommandOptions<string[] | null, number[] | null>);
3725
3859
  }
3726
3860
 
3727
- export { HStrLenCommand as $, AppendCommand as A, BitCountCommand as B, CopyCommand as C, DBSizeCommand as D, EchoCommand as E, FlushAllCommand as F, GeoAddCommand as G, GetExCommand as H, GetRangeCommand as I, GetSetCommand as J, HDelCommand as K, HExistsCommand as L, HGetCommand as M, HGetAllCommand as N, HIncrByCommand as O, Pipeline as P, HIncrByFloatCommand as Q, type RedisOptions as R, HKeysCommand as S, HLenCommand as T, type UpstashRequest as U, HMGetCommand as V, HMSetCommand as W, HRandFieldCommand as X, HScanCommand as Y, HSetCommand as Z, HSetNXCommand as _, type RequesterConfig as a, type SetCommandOptions as a$, HValsCommand as a0, IncrCommand as a1, IncrByCommand as a2, IncrByFloatCommand as a3, JsonArrAppendCommand as a4, JsonArrIndexCommand as a5, JsonArrInsertCommand as a6, JsonArrLenCommand as a7, JsonArrPopCommand as a8, JsonArrTrimCommand as a9, LTrimCommand as aA, MGetCommand as aB, MSetCommand as aC, MSetNXCommand as aD, PersistCommand as aE, PExpireCommand as aF, PExpireAtCommand as aG, PingCommand as aH, PSetEXCommand as aI, PTtlCommand as aJ, PublishCommand as aK, RandomKeyCommand as aL, RenameCommand as aM, RenameNXCommand as aN, RPopCommand as aO, RPushCommand as aP, RPushXCommand as aQ, SAddCommand as aR, ScanCommand as aS, type ScanCommandOptions as aT, SCardCommand as aU, ScriptExistsCommand as aV, ScriptFlushCommand as aW, ScriptLoadCommand as aX, SDiffCommand as aY, SDiffStoreCommand as aZ, SetCommand as a_, JsonClearCommand as aa, JsonDelCommand as ab, JsonForgetCommand as ac, JsonGetCommand as ad, JsonMGetCommand as ae, JsonNumIncrByCommand as af, JsonNumMultByCommand as ag, JsonObjKeysCommand as ah, JsonObjLenCommand as ai, JsonRespCommand as aj, JsonSetCommand as ak, JsonStrAppendCommand as al, JsonStrLenCommand as am, JsonToggleCommand as an, JsonTypeCommand as ao, KeysCommand as ap, LIndexCommand as aq, LInsertCommand as ar, LLenCommand as as, LMoveCommand as at, LPopCommand as au, LPushCommand as av, LPushXCommand as aw, LRangeCommand as ax, LRemCommand as ay, LSetCommand as az, Redis as b, SetBitCommand as b0, SetExCommand as b1, SetNxCommand as b2, SetRangeCommand as b3, SInterCommand as b4, SInterStoreCommand as b5, SIsMemberCommand as b6, SMembersCommand as b7, SMIsMemberCommand as b8, SMoveCommand as b9, ZPopMaxCommand as bA, ZPopMinCommand as bB, ZRangeCommand as bC, type ZRangeCommandOptions as bD, ZRankCommand as bE, ZRemCommand as bF, ZRemRangeByLexCommand as bG, ZRemRangeByRankCommand as bH, ZRemRangeByScoreCommand as bI, ZRevRankCommand as bJ, ZScanCommand as bK, ZScoreCommand as bL, ZUnionCommand as bM, type ZUnionCommandOptions as bN, ZUnionStoreCommand as bO, type ZUnionStoreCommandOptions as bP, SPopCommand as ba, SRandMemberCommand as bb, SRemCommand as bc, SScanCommand as bd, StrLenCommand as be, SUnionCommand as bf, SUnionStoreCommand as bg, TimeCommand as bh, TouchCommand as bi, TtlCommand as bj, type Type as bk, TypeCommand as bl, UnlinkCommand as bm, XAddCommand as bn, XRangeCommand as bo, type ScoreMember as bp, type ZAddCommandOptions as bq, ZAddCommand as br, ZCardCommand as bs, ZCountCommand as bt, ZDiffStoreCommand as bu, ZIncrByCommand as bv, ZInterStoreCommand as bw, type ZInterStoreCommandOptions as bx, ZLexCountCommand as by, ZMScoreCommand as bz, type UpstashResponse as c, type Requester as d, error as e, BitOpCommand as f, BitPosCommand as g, DecrCommand as h, DecrByCommand as i, DelCommand as j, EvalCommand as k, EvalshaCommand as l, ExistsCommand as m, ExpireCommand as n, ExpireAtCommand as o, FlushDBCommand as p, type GeoAddCommandOptions as q, type GeoMember as r, GeoDistCommand as s, GeoHashCommand as t, GeoPosCommand as u, GeoSearchCommand as v, GeoSearchStoreCommand as w, GetCommand as x, GetBitCommand as y, GetDelCommand as z };
3861
+ export { HScanCommand as $, AppendCommand as A, BitCountCommand as B, CopyCommand as C, DBSizeCommand as D, EchoCommand as E, FlushAllCommand as F, GeoAddCommand as G, GetBitCommand as H, GetDelCommand as I, GetExCommand as J, GetRangeCommand as K, GetSetCommand as L, HDelCommand as M, HExistsCommand as N, HExpireCommand as O, Pipeline as P, HGetCommand as Q, type RedisOptions as R, HGetAllCommand as S, HIncrByCommand as T, type UpstashRequest as U, HIncrByFloatCommand as V, HKeysCommand as W, HLenCommand as X, HMGetCommand as Y, HMSetCommand as Z, HRandFieldCommand as _, type RequesterConfig as a, ScriptLoadCommand as a$, HSetCommand as a0, HSetNXCommand as a1, HStrLenCommand as a2, HValsCommand as a3, IncrCommand as a4, IncrByCommand as a5, IncrByFloatCommand as a6, JsonArrAppendCommand as a7, JsonArrIndexCommand as a8, JsonArrInsertCommand as a9, LPushXCommand as aA, LRangeCommand as aB, LRemCommand as aC, LSetCommand as aD, LTrimCommand as aE, MGetCommand as aF, MSetCommand as aG, MSetNXCommand as aH, PersistCommand as aI, PExpireCommand as aJ, PExpireAtCommand as aK, PingCommand as aL, PSetEXCommand as aM, PTtlCommand as aN, PublishCommand as aO, RandomKeyCommand as aP, RenameCommand as aQ, RenameNXCommand as aR, RPopCommand as aS, RPushCommand as aT, RPushXCommand as aU, SAddCommand as aV, ScanCommand as aW, type ScanCommandOptions as aX, SCardCommand as aY, ScriptExistsCommand as aZ, ScriptFlushCommand as a_, JsonArrLenCommand as aa, JsonArrPopCommand as ab, JsonArrTrimCommand as ac, JsonClearCommand as ad, JsonDelCommand as ae, JsonForgetCommand as af, JsonGetCommand as ag, JsonMergeCommand as ah, JsonMGetCommand as ai, JsonNumIncrByCommand as aj, JsonNumMultByCommand as ak, JsonObjKeysCommand as al, JsonObjLenCommand as am, JsonRespCommand as an, JsonSetCommand as ao, JsonStrAppendCommand as ap, JsonStrLenCommand as aq, JsonToggleCommand as ar, JsonTypeCommand as as, KeysCommand as at, LIndexCommand as au, LInsertCommand as av, LLenCommand as aw, LMoveCommand as ax, LPopCommand as ay, LPushCommand as az, Redis as b, SDiffCommand as b0, SDiffStoreCommand as b1, SetCommand as b2, type SetCommandOptions as b3, SetBitCommand as b4, SetExCommand as b5, SetNxCommand as b6, SetRangeCommand as b7, SInterCommand as b8, SInterStoreCommand as b9, ZInterStoreCommand as bA, type ZInterStoreCommandOptions as bB, ZLexCountCommand as bC, ZMScoreCommand as bD, ZPopMaxCommand as bE, ZPopMinCommand as bF, ZRangeCommand as bG, type ZRangeCommandOptions as bH, ZRankCommand as bI, ZRemCommand as bJ, ZRemRangeByLexCommand as bK, ZRemRangeByRankCommand as bL, ZRemRangeByScoreCommand as bM, ZRevRankCommand as bN, ZScanCommand as bO, ZScoreCommand as bP, ZUnionCommand as bQ, type ZUnionCommandOptions as bR, ZUnionStoreCommand as bS, type ZUnionStoreCommandOptions as bT, SIsMemberCommand as ba, SMembersCommand as bb, SMIsMemberCommand as bc, SMoveCommand as bd, SPopCommand as be, SRandMemberCommand as bf, SRemCommand as bg, SScanCommand as bh, StrLenCommand as bi, SUnionCommand as bj, SUnionStoreCommand as bk, TimeCommand as bl, TouchCommand as bm, TtlCommand as bn, type Type as bo, TypeCommand as bp, UnlinkCommand as bq, XAddCommand as br, XRangeCommand as bs, type ScoreMember as bt, type ZAddCommandOptions as bu, ZAddCommand as bv, ZCardCommand as bw, ZCountCommand as bx, ZDiffStoreCommand as by, ZIncrByCommand as bz, type UpstashResponse as c, type Requester as d, error as e, BitOpCommand as f, BitPosCommand as g, DecrCommand as h, DecrByCommand as i, DelCommand as j, EvalROCommand as k, EvalCommand as l, EvalshaROCommand as m, EvalshaCommand as n, ExistsCommand as o, ExpireCommand as p, ExpireAtCommand as q, FlushDBCommand as r, type GeoAddCommandOptions as s, type GeoMember as t, GeoDistCommand as u, GeoHashCommand as v, GeoPosCommand as w, GeoSearchCommand as x, GeoSearchStoreCommand as y, GetCommand as z };