@upstash/redis 0.0.0-ci.ec2c4106-20221122 → 0.0.0-ci.ed40a9ac-20230414
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.
- package/README.md +9 -2
- package/esm/pkg/commands/command.js +12 -3
- package/esm/pkg/commands/hgetall.js +0 -4
- package/esm/pkg/commands/hrandfield.js +39 -0
- package/esm/pkg/commands/json_arrappend.js +9 -0
- package/esm/pkg/commands/json_arrindex.js +9 -0
- package/esm/pkg/commands/json_arrinsert.js +9 -0
- package/esm/pkg/commands/json_arrlen.js +9 -0
- package/esm/pkg/commands/json_arrpop.js +9 -0
- package/esm/pkg/commands/json_arrtrim.js +12 -0
- package/esm/pkg/commands/json_clear.js +9 -0
- package/esm/pkg/commands/json_del.js +9 -0
- package/esm/pkg/commands/json_forget.js +9 -0
- package/esm/pkg/commands/json_get.js +30 -0
- package/esm/pkg/commands/json_mget.js +9 -0
- package/esm/pkg/commands/json_numincrby.js +9 -0
- package/esm/pkg/commands/json_nummultby.js +9 -0
- package/esm/pkg/commands/json_objkeys.js +9 -0
- package/esm/pkg/commands/json_objlen.js +9 -0
- package/esm/pkg/commands/json_resp.js +9 -0
- package/esm/pkg/commands/json_set.js +18 -0
- package/esm/pkg/commands/json_strappend.js +9 -0
- package/esm/pkg/commands/json_strlen.js +9 -0
- package/esm/pkg/commands/json_toggle.js +9 -0
- package/esm/pkg/commands/json_type.js +9 -0
- package/esm/pkg/commands/lmove.js +9 -0
- package/esm/pkg/commands/mod.js +25 -1
- package/esm/pkg/commands/smismember.js +9 -0
- package/esm/pkg/commands/zdiffstore.js +9 -0
- package/esm/pkg/http.js +27 -18
- package/esm/pkg/pipeline.js +131 -1
- package/esm/pkg/redis.js +155 -1
- package/esm/platforms/cloudflare.js +6 -6
- package/esm/platforms/fastly.js +5 -0
- package/esm/platforms/node_with_fetch.js +23 -11
- package/esm/platforms/nodejs.js +19 -11
- package/esm/version.js +1 -1
- package/package.json +41 -16
- package/script/pkg/commands/command.js +12 -3
- package/script/pkg/commands/hgetall.js +0 -4
- package/script/pkg/commands/hrandfield.js +43 -0
- package/script/pkg/commands/json_arrappend.js +13 -0
- package/script/pkg/commands/json_arrindex.js +13 -0
- package/script/pkg/commands/json_arrinsert.js +13 -0
- package/script/pkg/commands/json_arrlen.js +13 -0
- package/script/pkg/commands/json_arrpop.js +13 -0
- package/script/pkg/commands/json_arrtrim.js +16 -0
- package/script/pkg/commands/json_clear.js +13 -0
- package/script/pkg/commands/json_del.js +13 -0
- package/script/pkg/commands/json_forget.js +13 -0
- package/script/pkg/commands/json_get.js +34 -0
- package/script/pkg/commands/json_mget.js +13 -0
- package/script/pkg/commands/json_numincrby.js +13 -0
- package/script/pkg/commands/json_nummultby.js +13 -0
- package/script/pkg/commands/json_objkeys.js +13 -0
- package/script/pkg/commands/json_objlen.js +13 -0
- package/script/pkg/commands/json_resp.js +13 -0
- package/script/pkg/commands/json_set.js +22 -0
- package/script/pkg/commands/json_strappend.js +13 -0
- package/script/pkg/commands/json_strlen.js +13 -0
- package/script/pkg/commands/json_toggle.js +13 -0
- package/script/pkg/commands/json_type.js +13 -0
- package/script/pkg/commands/lmove.js +13 -0
- package/script/pkg/commands/mod.js +25 -1
- package/script/pkg/commands/smismember.js +13 -0
- package/script/pkg/commands/zdiffstore.js +13 -0
- package/script/pkg/http.js +27 -18
- package/script/pkg/pipeline.js +130 -0
- package/script/pkg/redis.js +154 -0
- package/script/platforms/cloudflare.js +6 -6
- package/script/platforms/fastly.js +5 -0
- package/script/platforms/node_with_fetch.js +23 -11
- package/script/platforms/nodejs.js +19 -11
- package/script/version.js +1 -1
- package/types/pkg/commands/command.d.ts +5 -5
- package/types/pkg/commands/hrandfield.d.ts +9 -0
- package/types/pkg/commands/json_arrappend.d.ts +7 -0
- package/types/pkg/commands/json_arrindex.d.ts +13 -0
- package/types/pkg/commands/json_arrinsert.d.ts +7 -0
- package/types/pkg/commands/json_arrlen.d.ts +7 -0
- package/types/pkg/commands/json_arrpop.d.ts +7 -0
- package/types/pkg/commands/json_arrtrim.d.ts +7 -0
- package/types/pkg/commands/json_clear.d.ts +7 -0
- package/types/pkg/commands/json_del.d.ts +7 -0
- package/types/pkg/commands/json_forget.d.ts +7 -0
- package/types/pkg/commands/json_get.d.ts +15 -0
- package/types/pkg/commands/json_mget.d.ts +7 -0
- package/types/pkg/commands/json_numincrby.d.ts +7 -0
- package/types/pkg/commands/json_nummultby.d.ts +7 -0
- package/types/pkg/commands/json_objkeys.d.ts +7 -0
- package/types/pkg/commands/json_objlen.d.ts +7 -0
- package/types/pkg/commands/json_resp.d.ts +7 -0
- package/types/pkg/commands/json_set.d.ts +18 -0
- package/types/pkg/commands/json_strappend.d.ts +7 -0
- package/types/pkg/commands/json_strlen.d.ts +7 -0
- package/types/pkg/commands/json_toggle.d.ts +7 -0
- package/types/pkg/commands/json_type.d.ts +7 -0
- package/types/pkg/commands/lmove.d.ts +12 -0
- package/types/pkg/commands/mod.d.ts +25 -1
- package/types/pkg/commands/scan.d.ts +1 -1
- package/types/pkg/commands/script_flush.d.ts +1 -1
- package/types/pkg/commands/set.d.ts +1 -1
- package/types/pkg/commands/smembers.d.ts +2 -2
- package/types/pkg/commands/smismember.d.ts +7 -0
- package/types/pkg/commands/type.d.ts +1 -1
- package/types/pkg/commands/zadd.d.ts +3 -3
- package/types/pkg/commands/zdiffstore.d.ts +7 -0
- package/types/pkg/commands/zinterstore.d.ts +1 -1
- package/types/pkg/commands/zrange.d.ts +1 -1
- package/types/pkg/commands/zunionstore.d.ts +1 -1
- package/types/pkg/http.d.ts +13 -24
- package/types/pkg/pipeline.d.ts +44 -2
- package/types/pkg/redis.d.ts +120 -10
- package/types/pkg/types.d.ts +27 -1
- package/types/platforms/cloudflare.d.ts +2 -2
- package/types/platforms/fastly.d.ts +1 -1
- package/types/platforms/node_with_fetch.d.ts +1 -1
- package/types/platforms/nodejs.d.ts +1 -1
- package/types/version.d.ts +1 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.get
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonGetCommand<TData extends (unknown | Record<string, unknown>) | (unknown | Record<string, unknown>)[]> extends Command<TData | null, TData | null> {
|
|
6
|
+
constructor(cmd: [
|
|
7
|
+
key: string,
|
|
8
|
+
opts?: {
|
|
9
|
+
indent?: string;
|
|
10
|
+
newline?: string;
|
|
11
|
+
space?: string;
|
|
12
|
+
},
|
|
13
|
+
...path: string[]
|
|
14
|
+
] | [key: string, ...path: string[]], opts?: CommandOptions<TData | null, TData | null>);
|
|
15
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.mget
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonMGetCommand<TData extends (unknown | Record<string, unknown>)[]> extends Command<TData, TData> {
|
|
6
|
+
constructor(cmd: [keys: string[], path: string], opts?: CommandOptions<TData, TData>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.numincrby
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonNumIncrByCommand extends Command<(null | string)[], (null | number)[]> {
|
|
6
|
+
constructor(cmd: [key: string, path: string, value: number], opts?: CommandOptions<(null | string)[], (null | number)[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.nummultby
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonNumMultByCommand extends Command<(null | string)[], (null | number)[]> {
|
|
6
|
+
constructor(cmd: [key: string, path: string, value: number], opts?: CommandOptions<(null | string)[], (null | number)[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.objkeys
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonObjKeysCommand extends Command<(string[] | null)[], (string[] | null)[]> {
|
|
6
|
+
constructor(cmd: [key: string, path?: string], opts?: CommandOptions<(string[] | null)[], (string[] | null)[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.objlen
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonObjLenCommand extends Command<(number | null)[], (number | null)[]> {
|
|
6
|
+
constructor(cmd: [key: string, path?: string], opts?: CommandOptions<(number | null)[], (number | null)[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.resp
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonRespCommand<TData extends unknown[]> extends Command<TData, TData> {
|
|
6
|
+
constructor(cmd: [key: string, path?: string], opts?: CommandOptions<TData, TData>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.set
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonSetCommand<TData extends number | string | boolean | Record<string, unknown> | (number | string | boolean | Record<string, unknown>)[]> extends Command<"OK" | null, "OK" | null> {
|
|
6
|
+
constructor(cmd: [
|
|
7
|
+
key: string,
|
|
8
|
+
path: string,
|
|
9
|
+
value: TData,
|
|
10
|
+
opts?: {
|
|
11
|
+
nx: true;
|
|
12
|
+
xx?: never;
|
|
13
|
+
} | {
|
|
14
|
+
nx?: never;
|
|
15
|
+
xx: true;
|
|
16
|
+
}
|
|
17
|
+
], opts?: CommandOptions<"OK" | null, "OK" | null>);
|
|
18
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.strappend
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonStrAppendCommand<TData extends unknown[]> extends Command<(null | string)[], (null | number)[]> {
|
|
6
|
+
constructor(cmd: [key: string, path: string, value: string], opts?: CommandOptions<(null | string)[], (null | number)[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.strlen
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonStrLenCommand extends Command<(number | null)[], (number | null)[]> {
|
|
6
|
+
constructor(cmd: [key: string, path?: string], opts?: CommandOptions<(number | null)[], (number | null)[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.toggle
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonToggleCommand extends Command<number[], number[]> {
|
|
6
|
+
constructor(cmd: [key: string, path: string], opts?: CommandOptions<number[], number[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/json.type
|
|
4
|
+
*/
|
|
5
|
+
export declare class JsonTypeCommand extends Command<string[], string[]> {
|
|
6
|
+
constructor(cmd: [key: string, path?: string], opts?: CommandOptions<string[], string[]>);
|
|
7
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/lmove
|
|
4
|
+
*/
|
|
5
|
+
export declare class LMoveCommand<TData = string> extends Command<TData, TData> {
|
|
6
|
+
constructor(cmd: [
|
|
7
|
+
source: string,
|
|
8
|
+
destination: string,
|
|
9
|
+
whereFrom: "left" | "right",
|
|
10
|
+
whereTo: "left" | "right"
|
|
11
|
+
], opts?: CommandOptions<TData, TData>);
|
|
12
|
+
}
|
|
@@ -17,9 +17,9 @@ export * from "./flushall.js";
|
|
|
17
17
|
export * from "./flushdb.js";
|
|
18
18
|
export * from "./get.js";
|
|
19
19
|
export * from "./getbit.js";
|
|
20
|
+
export * from "./getdel.js";
|
|
20
21
|
export * from "./getrange.js";
|
|
21
22
|
export * from "./getset.js";
|
|
22
|
-
export * from "./getdel.js";
|
|
23
23
|
export * from "./hdel.js";
|
|
24
24
|
export * from "./hexists.js";
|
|
25
25
|
export * from "./hget.js";
|
|
@@ -30,6 +30,7 @@ export * from "./hkeys.js";
|
|
|
30
30
|
export * from "./hlen.js";
|
|
31
31
|
export * from "./hmget.js";
|
|
32
32
|
export * from "./hmset.js";
|
|
33
|
+
export * from "./hrandfield.js";
|
|
33
34
|
export * from "./hscan.js";
|
|
34
35
|
export * from "./hset.js";
|
|
35
36
|
export * from "./hsetnx.js";
|
|
@@ -38,10 +39,32 @@ export * from "./hvals.js";
|
|
|
38
39
|
export * from "./incr.js";
|
|
39
40
|
export * from "./incrby.js";
|
|
40
41
|
export * from "./incrbyfloat.js";
|
|
42
|
+
export * from "./json_arrappend.js";
|
|
43
|
+
export * from "./json_arrindex.js";
|
|
44
|
+
export * from "./json_arrinsert.js";
|
|
45
|
+
export * from "./json_arrlen.js";
|
|
46
|
+
export * from "./json_arrpop.js";
|
|
47
|
+
export * from "./json_arrtrim.js";
|
|
48
|
+
export * from "./json_clear.js";
|
|
49
|
+
export * from "./json_del.js";
|
|
50
|
+
export * from "./json_forget.js";
|
|
51
|
+
export * from "./json_get.js";
|
|
52
|
+
export * from "./json_mget.js";
|
|
53
|
+
export * from "./json_numincrby.js";
|
|
54
|
+
export * from "./json_nummultby.js";
|
|
55
|
+
export * from "./json_objkeys.js";
|
|
56
|
+
export * from "./json_objlen.js";
|
|
57
|
+
export * from "./json_resp.js";
|
|
58
|
+
export * from "./json_set.js";
|
|
59
|
+
export * from "./json_strappend.js";
|
|
60
|
+
export * from "./json_strlen.js";
|
|
61
|
+
export * from "./json_toggle.js";
|
|
62
|
+
export * from "./json_type.js";
|
|
41
63
|
export * from "./keys.js";
|
|
42
64
|
export * from "./lindex.js";
|
|
43
65
|
export * from "./linsert.js";
|
|
44
66
|
export * from "./llen.js";
|
|
67
|
+
export * from "./lmove.js";
|
|
45
68
|
export * from "./lpop.js";
|
|
46
69
|
export * from "./lpos.js";
|
|
47
70
|
export * from "./lpush.js";
|
|
@@ -83,6 +106,7 @@ export * from "./sinter.js";
|
|
|
83
106
|
export * from "./sinterstore.js";
|
|
84
107
|
export * from "./sismember.js";
|
|
85
108
|
export * from "./smembers.js";
|
|
109
|
+
export * from "./smismember.js";
|
|
86
110
|
export * from "./smove.js";
|
|
87
111
|
export * from "./spop.js";
|
|
88
112
|
export * from "./srandmember.js";
|
|
@@ -2,6 +2,6 @@ import { Command, CommandOptions } from "./command.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* @see https://redis.io/commands/smembers
|
|
4
4
|
*/
|
|
5
|
-
export declare class SMembersCommand<TData = string> extends Command<unknown[], TData
|
|
6
|
-
constructor(cmd: [key: string], opts?: CommandOptions<unknown[], TData
|
|
5
|
+
export declare class SMembersCommand<TData extends unknown[] = string[]> extends Command<unknown[], TData> {
|
|
6
|
+
constructor(cmd: [key: string], opts?: CommandOptions<unknown[], TData>);
|
|
7
7
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/smismember
|
|
4
|
+
*/
|
|
5
|
+
export declare class SMIsMemberCommand<TMembers extends unknown[]> extends Command<("0" | "1")[], (0 | 1)[]> {
|
|
6
|
+
constructor(cmd: [key: string, members: TMembers], opts?: CommandOptions<("0" | "1")[], (0 | 1)[]>);
|
|
7
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Command, CommandOptions } from "./command.js";
|
|
2
|
-
export
|
|
2
|
+
export type ZAddCommandOptions = ({
|
|
3
3
|
nx: true;
|
|
4
4
|
xx?: never;
|
|
5
5
|
} | {
|
|
@@ -11,10 +11,10 @@ export declare type ZAddCommandOptions = ({
|
|
|
11
11
|
}) & {
|
|
12
12
|
ch?: true;
|
|
13
13
|
};
|
|
14
|
-
export
|
|
14
|
+
export type ZAddCommandOptionsWithIncr = ZAddCommandOptions & {
|
|
15
15
|
incr: true;
|
|
16
16
|
};
|
|
17
|
-
export
|
|
17
|
+
export type ScoreMember<TData> = {
|
|
18
18
|
score: number;
|
|
19
19
|
member: TData;
|
|
20
20
|
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command, CommandOptions } from "./command.js";
|
|
2
|
+
/**
|
|
3
|
+
* @see https://redis.io/commands/zdiffstore
|
|
4
|
+
*/
|
|
5
|
+
export declare class ZDiffStoreCommand extends Command<number, number> {
|
|
6
|
+
constructor(cmd: [destination: string, numkeys: number, ...keys: string[]], opts?: CommandOptions<number, number>);
|
|
7
|
+
}
|
package/types/pkg/http.d.ts
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
|
|
1
|
+
import { Telemetry } from "./types.js";
|
|
2
|
+
type CacheSetting = "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload";
|
|
3
|
+
export type UpstashRequest = {
|
|
2
4
|
path?: string[];
|
|
3
5
|
/**
|
|
4
6
|
* Request body will be serialized to json
|
|
5
7
|
*/
|
|
6
8
|
body?: unknown;
|
|
7
9
|
};
|
|
8
|
-
export
|
|
10
|
+
export type UpstashResponse<TResult> = {
|
|
9
11
|
result?: TResult;
|
|
10
12
|
error?: string;
|
|
11
13
|
};
|
|
12
14
|
export interface Requester {
|
|
13
15
|
request: <TResult = unknown>(req: UpstashRequest) => Promise<UpstashResponse<TResult>>;
|
|
14
16
|
}
|
|
15
|
-
export
|
|
17
|
+
export type RetryConfig = false | {
|
|
16
18
|
/**
|
|
17
19
|
* The number of retries to attempt before giving up.
|
|
18
20
|
*
|
|
@@ -29,10 +31,10 @@ export declare type RetryConfig = false | {
|
|
|
29
31
|
*/
|
|
30
32
|
backoff?: (retryCount: number) => number;
|
|
31
33
|
};
|
|
32
|
-
export
|
|
34
|
+
export type Options = {
|
|
33
35
|
backend?: string;
|
|
34
36
|
};
|
|
35
|
-
export
|
|
37
|
+
export type RequesterConfig = {
|
|
36
38
|
/**
|
|
37
39
|
* Configure the retry behaviour in case of network errors
|
|
38
40
|
*/
|
|
@@ -61,42 +63,29 @@ export declare type RequesterConfig = {
|
|
|
61
63
|
*/
|
|
62
64
|
responseEncoding?: false | "base64";
|
|
63
65
|
};
|
|
64
|
-
export
|
|
66
|
+
export type HttpClientConfig = {
|
|
65
67
|
headers?: Record<string, string>;
|
|
66
68
|
baseUrl: string;
|
|
67
69
|
options?: Options;
|
|
68
70
|
retry?: RetryConfig;
|
|
69
71
|
agent?: any;
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Upstash-Telemetry-Sdk
|
|
73
|
-
* @example @upstash/redis@v1.1.1
|
|
74
|
-
*/
|
|
75
|
-
sdk?: string;
|
|
76
|
-
/**
|
|
77
|
-
* Upstash-Telemetry-Platform
|
|
78
|
-
* @example cloudflare
|
|
79
|
-
*/
|
|
80
|
-
platform?: string;
|
|
81
|
-
/**
|
|
82
|
-
* Upstash-Telemetry-Runtime
|
|
83
|
-
* @example node@v18
|
|
84
|
-
*/
|
|
85
|
-
runtime?: string;
|
|
86
|
-
};
|
|
72
|
+
cache?: CacheSetting;
|
|
87
73
|
} & RequesterConfig;
|
|
88
74
|
export declare class HttpClient implements Requester {
|
|
89
75
|
baseUrl: string;
|
|
90
|
-
headers: Record<string, string
|
|
76
|
+
headers: Record<string, string>;
|
|
91
77
|
readonly options: {
|
|
92
78
|
backend?: string;
|
|
93
79
|
agent: any;
|
|
94
80
|
responseEncoding?: false | "base64";
|
|
81
|
+
cache?: CacheSetting;
|
|
95
82
|
};
|
|
96
83
|
readonly retry: {
|
|
97
84
|
attempts: number;
|
|
98
85
|
backoff: (retryCount: number) => number;
|
|
99
86
|
};
|
|
100
87
|
constructor(config: HttpClientConfig);
|
|
88
|
+
mergeTelemetry(telemetry: Telemetry): void;
|
|
101
89
|
request<TResult>(req: UpstashRequest): Promise<UpstashResponse<TResult>>;
|
|
102
90
|
}
|
|
91
|
+
export {};
|
package/types/pkg/pipeline.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DelCommand, ExistsCommand, FlushAllCommand, MGetCommand, PingCommand, ScoreMember, ScriptExistsCommand, SetCommandOptions, TouchCommand, UnlinkCommand, ZAddCommandOptions, ZAddCommandOptionsWithIncr, ZRangeCommandOptions } from "./commands/mod.js";
|
|
1
|
+
import { DelCommand, ExistsCommand, FlushAllCommand, JsonArrAppendCommand, JsonArrIndexCommand, JsonArrInsertCommand, JsonArrLenCommand, JsonArrPopCommand, JsonArrTrimCommand, JsonClearCommand, JsonDelCommand, JsonForgetCommand, JsonGetCommand, JsonMGetCommand, JsonNumIncrByCommand, JsonNumMultByCommand, JsonObjKeysCommand, JsonObjLenCommand, JsonRespCommand, JsonSetCommand, JsonStrAppendCommand, JsonStrLenCommand, JsonToggleCommand, JsonTypeCommand, MGetCommand, PingCommand, ScoreMember, ScriptExistsCommand, SetCommandOptions, TouchCommand, UnlinkCommand, ZAddCommandOptions, ZAddCommandOptionsWithIncr, ZRangeCommandOptions } from "./commands/mod.js";
|
|
2
2
|
import { CommandOptions } from "./commands/command.js";
|
|
3
3
|
import { Requester } from "./http.js";
|
|
4
4
|
import { CommandArgs } from "./types.js";
|
|
@@ -85,6 +85,10 @@ export declare class Pipeline {
|
|
|
85
85
|
* @see https://redis.io/commands/bitpos
|
|
86
86
|
*/
|
|
87
87
|
bitpos: (key: string, bit: 0 | 1, start?: number | undefined, end?: number | undefined) => this;
|
|
88
|
+
/**
|
|
89
|
+
* @see https://redis.io/commands/zdiffstore
|
|
90
|
+
*/
|
|
91
|
+
zdiffstore: (destination: string, numkeys: number, ...keys: string[]) => this;
|
|
88
92
|
/**
|
|
89
93
|
* @see https://redis.io/commands/dbsize
|
|
90
94
|
*/
|
|
@@ -197,6 +201,10 @@ export declare class Pipeline {
|
|
|
197
201
|
hmset: <TData>(key: string, kv: {
|
|
198
202
|
[field: string]: TData;
|
|
199
203
|
}) => this;
|
|
204
|
+
/**
|
|
205
|
+
* @see https://redis.io/commands/hrandfield
|
|
206
|
+
*/
|
|
207
|
+
hrandfield: <TData extends string | string[] | Record<string, unknown>>(key: string, count?: number, withValues?: boolean) => this;
|
|
200
208
|
/**
|
|
201
209
|
* @see https://redis.io/commands/hscan
|
|
202
210
|
*/
|
|
@@ -247,6 +255,10 @@ export declare class Pipeline {
|
|
|
247
255
|
* @see https://redis.io/commands/llen
|
|
248
256
|
*/
|
|
249
257
|
llen: (key: string) => this;
|
|
258
|
+
/**
|
|
259
|
+
* @see https://redis.io/commands/lmove
|
|
260
|
+
*/
|
|
261
|
+
lmove: <TData = string>(source: string, destination: string, whereFrom: "left" | "right", whereTo: "left" | "right") => this;
|
|
250
262
|
/**
|
|
251
263
|
* @see https://redis.io/commands/lpop
|
|
252
264
|
*/
|
|
@@ -415,7 +427,11 @@ export declare class Pipeline {
|
|
|
415
427
|
/**
|
|
416
428
|
* @see https://redis.io/commands/smembers
|
|
417
429
|
*/
|
|
418
|
-
smembers: (key: string) => this;
|
|
430
|
+
smembers: <TData extends unknown[] = string[]>(key: string) => this;
|
|
431
|
+
/**
|
|
432
|
+
* @see https://redis.io/commands/smismember
|
|
433
|
+
*/
|
|
434
|
+
smismember: <TMembers extends unknown[]>(key: string, members: TMembers) => this;
|
|
419
435
|
/**
|
|
420
436
|
* @see https://redis.io/commands/smove
|
|
421
437
|
*/
|
|
@@ -558,4 +574,30 @@ export declare class Pipeline {
|
|
|
558
574
|
* @see https://redis.io/commands/zunionstore
|
|
559
575
|
*/
|
|
560
576
|
zunionstore: (destination: string, numKeys: number, keys: string[], opts?: import("./commands/zunionstore.js").ZUnionStoreCommandOptions | undefined) => this;
|
|
577
|
+
/**
|
|
578
|
+
* @see https://redis.io/commands/?group=json
|
|
579
|
+
*/
|
|
580
|
+
get json(): {
|
|
581
|
+
arrappend: (...args: CommandArgs<typeof JsonArrAppendCommand>) => Pipeline;
|
|
582
|
+
arrindex: (...args: CommandArgs<typeof JsonArrIndexCommand>) => Pipeline;
|
|
583
|
+
arrinsert: (...args: CommandArgs<typeof JsonArrInsertCommand>) => Pipeline;
|
|
584
|
+
arrlen: (...args: CommandArgs<typeof JsonArrLenCommand>) => Pipeline;
|
|
585
|
+
arrpop: (...args: CommandArgs<typeof JsonArrPopCommand>) => Pipeline;
|
|
586
|
+
arrtrim: (...args: CommandArgs<typeof JsonArrTrimCommand>) => Pipeline;
|
|
587
|
+
clear: (...args: CommandArgs<typeof JsonClearCommand>) => Pipeline;
|
|
588
|
+
del: (...args: CommandArgs<typeof JsonDelCommand>) => Pipeline;
|
|
589
|
+
forget: (...args: CommandArgs<typeof JsonForgetCommand>) => Pipeline;
|
|
590
|
+
get: (...args: CommandArgs<typeof JsonGetCommand>) => Pipeline;
|
|
591
|
+
mget: (...args: CommandArgs<typeof JsonMGetCommand>) => Pipeline;
|
|
592
|
+
numincrby: (...args: CommandArgs<typeof JsonNumIncrByCommand>) => Pipeline;
|
|
593
|
+
nummultby: (...args: CommandArgs<typeof JsonNumMultByCommand>) => Pipeline;
|
|
594
|
+
objkeys: (...args: CommandArgs<typeof JsonObjKeysCommand>) => Pipeline;
|
|
595
|
+
objlen: (...args: CommandArgs<typeof JsonObjLenCommand>) => Pipeline;
|
|
596
|
+
resp: (...args: CommandArgs<typeof JsonRespCommand>) => Pipeline;
|
|
597
|
+
set: (...args: CommandArgs<typeof JsonSetCommand>) => Pipeline;
|
|
598
|
+
strappend: (...args: CommandArgs<typeof JsonStrAppendCommand>) => Pipeline;
|
|
599
|
+
strlen: (...args: CommandArgs<typeof JsonStrLenCommand>) => Pipeline;
|
|
600
|
+
toggle: (...args: CommandArgs<typeof JsonToggleCommand>) => Pipeline;
|
|
601
|
+
type: (...args: CommandArgs<typeof JsonTypeCommand>) => Pipeline;
|
|
602
|
+
};
|
|
561
603
|
}
|
package/types/pkg/redis.d.ts
CHANGED
|
@@ -1,22 +1,16 @@
|
|
|
1
|
-
import { CommandOptions, DelCommand, ExistsCommand, FlushAllCommand, MGetCommand, PingCommand, ScoreMember, ScriptExistsCommand, SetCommandOptions, TouchCommand, UnlinkCommand, ZAddCommandOptions, ZAddCommandOptionsWithIncr, ZRangeCommandOptions } from "./commands/mod.js";
|
|
1
|
+
import { CommandOptions, DelCommand, ExistsCommand, FlushAllCommand, JsonGetCommand, MGetCommand, PingCommand, ScoreMember, ScriptExistsCommand, SetCommandOptions, TouchCommand, UnlinkCommand, ZAddCommandOptions, ZAddCommandOptionsWithIncr, ZRangeCommandOptions } from "./commands/mod.js";
|
|
2
2
|
import { Requester, UpstashRequest, UpstashResponse } from "./http.js";
|
|
3
3
|
import { Pipeline } from "./pipeline.js";
|
|
4
4
|
import type { CommandArgs } from "./types.js";
|
|
5
5
|
import { Script } from "./script.js";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Automatically try to deserialize the returned data from upstash using `JSON.deserialize`
|
|
9
|
-
*
|
|
10
|
-
* @default true
|
|
11
|
-
*/
|
|
12
|
-
automaticDeserialization?: boolean;
|
|
13
|
-
};
|
|
6
|
+
import { RedisOptions, Telemetry } from "./types.js";
|
|
14
7
|
/**
|
|
15
8
|
* Serverless redis client for upstash.
|
|
16
9
|
*/
|
|
17
10
|
export declare class Redis {
|
|
18
11
|
protected client: Requester;
|
|
19
12
|
protected opts?: CommandOptions<any, any>;
|
|
13
|
+
protected enableTelemetry: boolean;
|
|
20
14
|
/**
|
|
21
15
|
* Create a new redis client
|
|
22
16
|
*
|
|
@@ -29,10 +23,106 @@ export declare class Redis {
|
|
|
29
23
|
* ```
|
|
30
24
|
*/
|
|
31
25
|
constructor(client: Requester, opts?: RedisOptions);
|
|
26
|
+
get json(): {
|
|
27
|
+
/**
|
|
28
|
+
* @see https://redis.io/commands/json.arrappend
|
|
29
|
+
*/
|
|
30
|
+
arrappend: (key: string, path: string, ...values: unknown[]) => Promise<(number | null)[]>;
|
|
31
|
+
/**
|
|
32
|
+
* @see https://redis.io/commands/json.arrindex
|
|
33
|
+
*/
|
|
34
|
+
arrindex: (key: string, path: string, value: unknown, start?: number | undefined, stop?: number | undefined) => Promise<(number | null)[]>;
|
|
35
|
+
/**
|
|
36
|
+
* @see https://redis.io/commands/json.arrinsert
|
|
37
|
+
*/
|
|
38
|
+
arrinsert: (key: string, path: string, index: number, ...values: unknown[]) => Promise<(number | null)[]>;
|
|
39
|
+
/**
|
|
40
|
+
* @see https://redis.io/commands/json.arrlen
|
|
41
|
+
*/
|
|
42
|
+
arrlen: (key: string, path?: string | undefined) => Promise<(number | null)[]>;
|
|
43
|
+
/**
|
|
44
|
+
* @see https://redis.io/commands/json.arrpop
|
|
45
|
+
*/
|
|
46
|
+
arrpop: (key: string, path?: string | undefined, index?: number | undefined) => Promise<unknown[]>;
|
|
47
|
+
/**
|
|
48
|
+
* @see https://redis.io/commands/json.arrtrim
|
|
49
|
+
*/
|
|
50
|
+
arrtrim: (key: string, path?: string | undefined, start?: number | undefined, stop?: number | undefined) => Promise<(number | null)[]>;
|
|
51
|
+
/**
|
|
52
|
+
* @see https://redis.io/commands/json.clear
|
|
53
|
+
*/
|
|
54
|
+
clear: (key: string, path?: string | undefined) => Promise<number>;
|
|
55
|
+
/**
|
|
56
|
+
* @see https://redis.io/commands/json.del
|
|
57
|
+
*/
|
|
58
|
+
del: (key: string, path?: string | undefined) => Promise<number>;
|
|
59
|
+
/**
|
|
60
|
+
* @see https://redis.io/commands/json.forget
|
|
61
|
+
*/
|
|
62
|
+
forget: (key: string, path?: string | undefined) => Promise<number>;
|
|
63
|
+
/**
|
|
64
|
+
* @see https://redis.io/commands/json.get
|
|
65
|
+
*/
|
|
66
|
+
get: (...args: CommandArgs<typeof JsonGetCommand>) => Promise<any>;
|
|
67
|
+
/**
|
|
68
|
+
* @see https://redis.io/commands/json.mget
|
|
69
|
+
*/
|
|
70
|
+
mget: (keys: string[], path: string) => Promise<any>;
|
|
71
|
+
/**
|
|
72
|
+
* @see https://redis.io/commands/json.numincrby
|
|
73
|
+
*/
|
|
74
|
+
numincrby: (key: string, path: string, value: number) => Promise<(number | null)[]>;
|
|
75
|
+
/**
|
|
76
|
+
* @see https://redis.io/commands/json.nummultby
|
|
77
|
+
*/
|
|
78
|
+
nummultby: (key: string, path: string, value: number) => Promise<(number | null)[]>;
|
|
79
|
+
/**
|
|
80
|
+
* @see https://redis.io/commands/json.objkeys
|
|
81
|
+
*/
|
|
82
|
+
objkeys: (key: string, path?: string | undefined) => Promise<(string[] | null)[]>;
|
|
83
|
+
/**
|
|
84
|
+
* @see https://redis.io/commands/json.objlen
|
|
85
|
+
*/
|
|
86
|
+
objlen: (key: string, path?: string | undefined) => Promise<(number | null)[]>;
|
|
87
|
+
/**
|
|
88
|
+
* @see https://redis.io/commands/json.resp
|
|
89
|
+
*/
|
|
90
|
+
resp: (key: string, path?: string | undefined) => Promise<any>;
|
|
91
|
+
/**
|
|
92
|
+
* @see https://redis.io/commands/json.set
|
|
93
|
+
*/
|
|
94
|
+
set: (key: string, path: string, value: string | number | boolean | Record<string, unknown> | (string | number | boolean | Record<string, unknown>)[], opts?: {
|
|
95
|
+
nx: true;
|
|
96
|
+
xx?: undefined;
|
|
97
|
+
} | {
|
|
98
|
+
nx?: undefined;
|
|
99
|
+
xx: true;
|
|
100
|
+
} | undefined) => Promise<"OK" | null>;
|
|
101
|
+
/**
|
|
102
|
+
* @see https://redis.io/commands/json.strappend
|
|
103
|
+
*/
|
|
104
|
+
strappend: (key: string, path: string, value: string) => Promise<(number | null)[]>;
|
|
105
|
+
/**
|
|
106
|
+
* @see https://redis.io/commands/json.strlen
|
|
107
|
+
*/
|
|
108
|
+
strlen: (key: string, path?: string | undefined) => Promise<(number | null)[]>;
|
|
109
|
+
/**
|
|
110
|
+
* @see https://redis.io/commands/json.toggle
|
|
111
|
+
*/
|
|
112
|
+
toggle: (key: string, path: string) => Promise<number[]>;
|
|
113
|
+
/**
|
|
114
|
+
* @see https://redis.io/commands/json.type
|
|
115
|
+
*/
|
|
116
|
+
type: (key: string, path?: string | undefined) => Promise<string[]>;
|
|
117
|
+
};
|
|
32
118
|
/**
|
|
33
119
|
* Wrap a new middleware around the HTTP client.
|
|
34
120
|
*/
|
|
35
121
|
use: <TResult = unknown>(middleware: (r: UpstashRequest, next: <TResult_1 = unknown>(req: UpstashRequest) => Promise<UpstashResponse<TResult_1>>) => Promise<UpstashResponse<TResult>>) => void;
|
|
122
|
+
/**
|
|
123
|
+
* Technically this is not private, we can hide it from intellisense by doing this
|
|
124
|
+
*/
|
|
125
|
+
protected addTelemetry: (telemetry: Telemetry) => void;
|
|
36
126
|
createScript(script: string): Script;
|
|
37
127
|
/**
|
|
38
128
|
* Create a new pipeline that allows you to send requests in bulk.
|
|
@@ -181,6 +271,14 @@ export declare class Redis {
|
|
|
181
271
|
hmset: <TData>(key: string, kv: {
|
|
182
272
|
[field: string]: TData;
|
|
183
273
|
}) => Promise<"OK">;
|
|
274
|
+
/**
|
|
275
|
+
* @see https://redis.io/commands/hrandfield
|
|
276
|
+
*/
|
|
277
|
+
hrandfield: {
|
|
278
|
+
(key: string): Promise<string>;
|
|
279
|
+
(key: string, count: number): Promise<string[]>;
|
|
280
|
+
<TData extends Record<string, unknown>>(key: string, count: number, withValues: boolean): Promise<Partial<TData>>;
|
|
281
|
+
};
|
|
184
282
|
/**
|
|
185
283
|
* @see https://redis.io/commands/hscan
|
|
186
284
|
*/
|
|
@@ -231,6 +329,10 @@ export declare class Redis {
|
|
|
231
329
|
* @see https://redis.io/commands/llen
|
|
232
330
|
*/
|
|
233
331
|
llen: (key: string) => Promise<number>;
|
|
332
|
+
/**
|
|
333
|
+
* @see https://redis.io/commands/lmove
|
|
334
|
+
*/
|
|
335
|
+
lmove: <TData = string>(source: string, destination: string, whereFrom: "left" | "right", whereTo: "left" | "right") => Promise<TData>;
|
|
234
336
|
/**
|
|
235
337
|
* @see https://redis.io/commands/lpop
|
|
236
338
|
*/
|
|
@@ -399,10 +501,14 @@ export declare class Redis {
|
|
|
399
501
|
* @see https://redis.io/commands/sismember
|
|
400
502
|
*/
|
|
401
503
|
sismember: <TData>(key: string, member: TData) => Promise<0 | 1>;
|
|
504
|
+
/**
|
|
505
|
+
* @see https://redis.io/commands/smismember
|
|
506
|
+
*/
|
|
507
|
+
smismember: <TMembers extends unknown[]>(key: string, members: TMembers) => Promise<(0 | 1)[]>;
|
|
402
508
|
/**
|
|
403
509
|
* @see https://redis.io/commands/smembers
|
|
404
510
|
*/
|
|
405
|
-
smembers: (key: string) => Promise<
|
|
511
|
+
smembers: <TData extends unknown[] = string[]>(key: string) => Promise<TData>;
|
|
406
512
|
/**
|
|
407
513
|
* @see https://redis.io/commands/smove
|
|
408
514
|
*/
|
|
@@ -467,6 +573,10 @@ export declare class Redis {
|
|
|
467
573
|
* @see https://redis.io/commands/zcount
|
|
468
574
|
*/
|
|
469
575
|
zcount: (key: string, min: string | number, max: string | number) => Promise<number>;
|
|
576
|
+
/**
|
|
577
|
+
* @see https://redis.io/commands/zdiffstore
|
|
578
|
+
*/
|
|
579
|
+
zdiffstore: (destination: string, numkeys: number, ...keys: string[]) => Promise<number>;
|
|
470
580
|
/**
|
|
471
581
|
* @see https://redis.io/commands/zincrby
|
|
472
582
|
*/
|