node-karin 0.0.3 → 0.1.1

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.
Files changed (109) hide show
  1. package/LICENSE +674 -674
  2. package/README.md +57 -57
  3. package/config/defSet/App.yaml +37 -37
  4. package/config/defSet/config.yaml +43 -43
  5. package/config/defSet/group.yaml +18 -18
  6. package/config/defSet/pm2.yaml +21 -21
  7. package/config/defSet/server.yaml +42 -42
  8. package/config/view/App.yaml +74 -74
  9. package/config/view/config.yaml +100 -100
  10. package/config/view/group.yaml +62 -62
  11. package/config/view/pm2.yaml +41 -41
  12. package/config/view/redis.yaml +25 -25
  13. package/config/view/server.yaml +93 -93
  14. package/lib/adapter/onebot/onebot11.d.ts +430 -430
  15. package/lib/adapter/onebot/onebot11.js +1265 -1302
  16. package/lib/core/dir.d.ts +1 -0
  17. package/lib/core/dir.js +4 -0
  18. package/lib/core/init.js +4 -4
  19. package/lib/core/karin.d.ts +72 -72
  20. package/lib/core/karin.js +51 -51
  21. package/lib/core/listener.d.ts +121 -121
  22. package/lib/core/listener.js +178 -178
  23. package/lib/core/plugin.app.d.ts +15 -15
  24. package/lib/core/plugin.app.js +18 -18
  25. package/lib/core/plugin.d.ts +182 -182
  26. package/lib/core/plugin.js +132 -132
  27. package/lib/core/plugin.loader.d.ts +149 -149
  28. package/lib/core/plugin.loader.js +451 -451
  29. package/lib/core/server.d.ts +26 -26
  30. package/lib/core/server.js +209 -209
  31. package/lib/db/level.d.ts +20 -20
  32. package/lib/db/level.js +36 -36
  33. package/lib/db/redis.d.ts +41 -41
  34. package/lib/db/redis.js +131 -131
  35. package/lib/db/redis_level.d.ts +113 -113
  36. package/lib/db/redis_level.js +274 -274
  37. package/lib/event/event.d.ts +138 -138
  38. package/lib/event/event.handler.d.ts +29 -29
  39. package/lib/event/event.handler.js +138 -138
  40. package/lib/event/event.js +120 -120
  41. package/lib/event/message.d.ts +102 -102
  42. package/lib/event/message.handler.d.ts +25 -25
  43. package/lib/event/message.handler.js +237 -237
  44. package/lib/event/message.js +69 -69
  45. package/lib/event/notice.d.ts +49 -49
  46. package/lib/event/notice.js +14 -14
  47. package/lib/event/request.d.ts +49 -49
  48. package/lib/event/request.js +14 -14
  49. package/lib/event/review.handler.d.ts +54 -54
  50. package/lib/event/review.handler.js +374 -374
  51. package/lib/index.d.ts +24 -23
  52. package/lib/index.js +40 -40
  53. package/lib/renderer/app.d.ts +53 -53
  54. package/lib/renderer/app.js +88 -88
  55. package/lib/renderer/base.d.ts +30 -30
  56. package/lib/renderer/base.js +68 -68
  57. package/lib/renderer/client.d.ts +30 -30
  58. package/lib/renderer/client.js +155 -155
  59. package/lib/renderer/http.d.ts +19 -19
  60. package/lib/renderer/http.js +50 -50
  61. package/lib/renderer/server.d.ts +42 -42
  62. package/lib/renderer/server.js +110 -110
  63. package/lib/renderer/wormhole.d.ts +1 -1
  64. package/lib/renderer/wormhole.js +154 -154
  65. package/lib/tools/init.d.ts +2 -0
  66. package/lib/tools/init.js +31 -0
  67. package/lib/types/adapter.d.ts +575 -575
  68. package/lib/types/adapter.js +1 -1
  69. package/lib/types/config.d.ts +327 -327
  70. package/lib/types/config.js +1 -1
  71. package/lib/types/element.d.ts +576 -576
  72. package/lib/types/element.js +1 -1
  73. package/lib/types/index.d.ts +8 -8
  74. package/lib/types/index.js +8 -8
  75. package/lib/types/logger.d.ts +109 -109
  76. package/lib/types/logger.js +1 -1
  77. package/lib/types/onebots11.d.ts +1371 -1371
  78. package/lib/types/onebots11.js +1 -1
  79. package/lib/types/plugin.d.ts +282 -282
  80. package/lib/types/plugin.js +1 -1
  81. package/lib/types/render.d.ts +111 -111
  82. package/lib/types/render.js +1 -1
  83. package/lib/types/reply.d.ts +40 -40
  84. package/lib/types/reply.js +1 -1
  85. package/lib/types/types.d.ts +898 -898
  86. package/lib/types/types.js +1 -1
  87. package/lib/utils/YamlEditor.d.ts +62 -62
  88. package/lib/utils/YamlEditor.js +197 -197
  89. package/lib/utils/button.d.ts +49 -49
  90. package/lib/utils/button.js +75 -75
  91. package/lib/utils/common.d.ts +123 -123
  92. package/lib/utils/common.js +396 -396
  93. package/lib/utils/config.d.ts +72 -72
  94. package/lib/utils/config.js +259 -254
  95. package/lib/utils/exec.d.ts +22 -22
  96. package/lib/utils/exec.js +36 -36
  97. package/lib/utils/ffmpeg.d.ts +12 -12
  98. package/lib/utils/ffmpeg.js +25 -25
  99. package/lib/utils/handler.d.ts +76 -76
  100. package/lib/utils/handler.js +98 -98
  101. package/lib/utils/logger.d.ts +3 -3
  102. package/lib/utils/logger.js +104 -104
  103. package/lib/utils/segment.d.ts +276 -276
  104. package/lib/utils/segment.js +420 -420
  105. package/lib/utils/update.d.ts +69 -69
  106. package/lib/utils/update.js +145 -145
  107. package/lib/utils/updateVersion.d.ts +33 -33
  108. package/lib/utils/updateVersion.js +140 -140
  109. package/package.json +95 -91
package/lib/db/redis.d.ts CHANGED
@@ -1,41 +1,41 @@
1
- import RedisLevel from './redis_level.js';
2
- import redis from 'redis';
3
- export default class Redis {
4
- id: 'redis';
5
- RunCmd: string;
6
- constructor();
7
- /**
8
- * redis实例化
9
- */
10
- start(): Promise<(redis.RedisClientType | string) | RedisLevel | false>;
11
- /**
12
- * 降级为 LevelDB
13
- */
14
- LevelDB(): Promise<false | RedisLevel>;
15
- /**
16
- * 连接 Redis 单例
17
- * @param {import("redis").RedisClientOptions} options
18
- * @return {Promise<{status: 'ok', data: import("redis").RedisClientType} | {status: 'error', data: Error}>}
19
- */
20
- connect(options: redis.RedisClientOptions): Promise<{
21
- status: 'ok';
22
- data: redis.RedisClientType;
23
- } | {
24
- status: 'error';
25
- data: string;
26
- }>;
27
- /**
28
- * 连接 Redis 集群
29
- */
30
- connectCluster(rootNodes: {
31
- url: string;
32
- }[]): Promise<{
33
- status: string;
34
- data: unknown;
35
- }>;
36
- /**
37
- * 判断是否为 ARM64 并返回参数
38
- */
39
- aarch64(): Promise<string>;
40
- execSync(cmd: string): Promise<string>;
41
- }
1
+ import RedisLevel from './redis_level.js';
2
+ import redis from 'redis';
3
+ export default class Redis {
4
+ id: 'redis';
5
+ RunCmd: string;
6
+ constructor();
7
+ /**
8
+ * redis实例化
9
+ */
10
+ start(): Promise<(redis.RedisClientType | string) | RedisLevel | false>;
11
+ /**
12
+ * 降级为 LevelDB
13
+ */
14
+ LevelDB(): Promise<false | RedisLevel>;
15
+ /**
16
+ * 连接 Redis 单例
17
+ * @param {import("redis").RedisClientOptions} options
18
+ * @return {Promise<{status: 'ok', data: import("redis").RedisClientType} | {status: 'error', data: Error}>}
19
+ */
20
+ connect(options: redis.RedisClientOptions): Promise<{
21
+ status: 'ok';
22
+ data: redis.RedisClientType;
23
+ } | {
24
+ status: 'error';
25
+ data: string;
26
+ }>;
27
+ /**
28
+ * 连接 Redis 集群
29
+ */
30
+ connectCluster(rootNodes: {
31
+ url: string;
32
+ }[]): Promise<{
33
+ status: string;
34
+ data: unknown;
35
+ }>;
36
+ /**
37
+ * 判断是否为 ARM64 并返回参数
38
+ */
39
+ aarch64(): Promise<string>;
40
+ execSync(cmd: string): Promise<string>;
41
+ }
package/lib/db/redis.js CHANGED
@@ -1,137 +1,137 @@
1
- import { exec } from 'child_process'
2
- import RedisLevel from './redis_level.js'
3
- import logger from '../utils/logger.js'
4
- import config from '../utils/config.js'
5
- import { createClient, createCluster } from 'redis'
6
- export default class Redis {
7
- id
8
- RunCmd
9
- constructor () {
10
- this.id = 'redis'
11
- this.RunCmd = ''
1
+ import { exec } from 'child_process'
2
+ import RedisLevel from './redis_level.js'
3
+ import logger from '../utils/logger.js'
4
+ import config from '../utils/config.js'
5
+ import { createClient, createCluster } from 'redis'
6
+ export default class Redis {
7
+ id
8
+ RunCmd
9
+ constructor () {
10
+ this.id = 'redis'
11
+ this.RunCmd = ''
12
12
  }
13
-
14
- /**
15
- * redis实例化
16
- */
17
- async start () {
18
- const { host, port, username, password, db: database, cluster } = config.redis
19
- /** 集群模式 */
20
- if (cluster && cluster.enable) {
21
- const rootNodes = cluster.rootNodes.map((node) => ({ url: node }))
22
- logger.info('正在连接 Redis 集群...')
23
- const { status, data } = await this.connectCluster(rootNodes)
24
- if (status === 'ok') {
25
- logger.info('Redis 集群连接成功')
26
- return data
27
- }
28
- logger.error(`Redis 集群建立连接失败:${logger.red(data)}`)
29
- return false
30
- }
31
- logger.info(`正在连接 ${logger.green(`Redis://${host}:${port}/${database}`)}`)
32
- const options = { socket: { host, port }, username, password, database }
33
- /** 第一次连接 */
34
- const { status, data } = await this.connect(options)
35
- if (status === 'ok') {
36
- logger.info('Redis 连接成功')
37
- return data
38
- }
39
- /** 第一次连接失败尝试拉起 windows直接降级 */
40
- if (process.platform === 'win32') {
41
- logger.error(`Redis 建立连接失败:${logger.red(data)}`)
42
- return await this.LevelDB()
43
- }
44
- this.RunCmd = 'redis-server --save 900 1 --save 300 10 --daemonize yes' + (await this.aarch64())
45
- logger.info('正在尝试启动 Redis...')
46
- try {
47
- await this.execSync(this.RunCmd)
48
- /** 启动成功再次重试 */
49
- const { status, data } = await this.connect(options)
50
- if (status === 'ok') {
51
- logger.info('Redis 连接成功')
52
- return data
53
- }
54
- logger.error(`Redis 二次建立连接失败:${logger.red(data)}`)
55
- return false
56
- } catch (error) {
57
- logger.error(`Redis 启动失败:${logger.red(data)}`)
58
- return await this.LevelDB()
59
- }
13
+
14
+ /**
15
+ * redis实例化
16
+ */
17
+ async start () {
18
+ const { host, port, username, password, db: database, cluster } = config.redis
19
+ /** 集群模式 */
20
+ if (cluster && cluster.enable) {
21
+ const rootNodes = cluster.rootNodes.map((node) => ({ url: node }))
22
+ logger.info('正在连接 Redis 集群...')
23
+ const { status, data } = await this.connectCluster(rootNodes)
24
+ if (status === 'ok') {
25
+ logger.info('Redis 集群连接成功')
26
+ return data
27
+ }
28
+ logger.error(`Redis 集群建立连接失败:${logger.red(data)}`)
29
+ return false
30
+ }
31
+ logger.info(`正在连接 ${logger.green(`Redis://${host}:${port}/${database}`)}`)
32
+ const options = { socket: { host, port }, username, password, database }
33
+ /** 第一次连接 */
34
+ const { status, data } = await this.connect(options)
35
+ if (status === 'ok') {
36
+ logger.info('Redis 连接成功')
37
+ return data
38
+ }
39
+ /** 第一次连接失败尝试拉起 windows直接降级 */
40
+ if (process.platform === 'win32') {
41
+ logger.error(`Redis 建立连接失败:${logger.red(data)}`)
42
+ return await this.LevelDB()
43
+ }
44
+ this.RunCmd = 'redis-server --save 900 1 --save 300 10 --daemonize yes' + (await this.aarch64())
45
+ logger.info('正在尝试启动 Redis...')
46
+ try {
47
+ await this.execSync(this.RunCmd)
48
+ /** 启动成功再次重试 */
49
+ const { status, data } = await this.connect(options)
50
+ if (status === 'ok') {
51
+ logger.info('Redis 连接成功')
52
+ return data
53
+ }
54
+ logger.error(`Redis 二次建立连接失败:${logger.red(data)}`)
55
+ return false
56
+ } catch (error) {
57
+ logger.error(`Redis 启动失败:${logger.red(data)}`)
58
+ return await this.LevelDB()
59
+ }
60
60
  }
61
-
62
- /**
63
- * 降级为 LevelDB
64
- */
65
- async LevelDB () {
66
- try {
67
- logger.mark(logger.red('正在降级为 LevelDB 代替 Redis 只能使用基础功能'))
68
- const redis = new RedisLevel()
69
- logger.info('LevelDB 降级成功')
70
- return redis
71
- } catch (error) {
72
- logger.error('降级为 LevelDB 失败')
73
- logger.error(error)
74
- return false
75
- }
61
+
62
+ /**
63
+ * 降级为 LevelDB
64
+ */
65
+ async LevelDB () {
66
+ try {
67
+ logger.mark(logger.red('正在降级为 LevelDB 代替 Redis 只能使用基础功能'))
68
+ const redis = new RedisLevel()
69
+ logger.info('LevelDB 降级成功')
70
+ return redis
71
+ } catch (error) {
72
+ logger.error('降级为 LevelDB 失败')
73
+ logger.error(error)
74
+ return false
75
+ }
76
76
  }
77
-
78
- /**
79
- * 连接 Redis 单例
80
- * @param {import("redis").RedisClientOptions} options
81
- * @return {Promise<{status: 'ok', data: import("redis").RedisClientType} | {status: 'error', data: Error}>}
82
- */
83
- async connect (options) {
84
- const client = createClient(options)
85
- try {
86
- await client.connect()
87
- return { status: 'ok', data: client }
88
- } catch (error) {
89
- return { status: 'error', data: error }
90
- }
77
+
78
+ /**
79
+ * 连接 Redis 单例
80
+ * @param {import("redis").RedisClientOptions} options
81
+ * @return {Promise<{status: 'ok', data: import("redis").RedisClientType} | {status: 'error', data: Error}>}
82
+ */
83
+ async connect (options) {
84
+ const client = createClient(options)
85
+ try {
86
+ await client.connect()
87
+ return { status: 'ok', data: client }
88
+ } catch (error) {
89
+ return { status: 'error', data: error }
90
+ }
91
91
  }
92
-
93
- /**
94
- * 连接 Redis 集群
95
- */
96
- async connectCluster (rootNodes) {
97
- const client = createCluster({ rootNodes })
98
- try {
99
- await client.connect()
100
- return { status: 'ok', data: client }
101
- } catch (error) {
102
- return { status: 'error', data: error }
103
- }
92
+
93
+ /**
94
+ * 连接 Redis 集群
95
+ */
96
+ async connectCluster (rootNodes) {
97
+ const client = createCluster({ rootNodes })
98
+ try {
99
+ await client.connect()
100
+ return { status: 'ok', data: client }
101
+ } catch (error) {
102
+ return { status: 'error', data: error }
103
+ }
104
104
  }
105
-
106
- /**
107
- * 判断是否为 ARM64 并返回参数
108
- */
109
- async aarch64 () {
110
- try {
111
- /** 判断arch */
112
- const arch = await this.execSync('uname -m')
113
- if (arch && arch.includes('aarch64')) {
114
- /** 提取 Redis 版本 */
115
- const version = await this.execSync('redis-server -v')
116
- if (version) {
117
- /** 提取版本号 */
118
- const RedisVersion = version.match(/v=(\d)./)
119
- /** 如果>=6版本则忽略警告 */
120
- if (RedisVersion && Number(RedisVersion[1]) >= 6) { return ' --ignore-warnings ARM64-COW-BUG' }
121
- }
122
- }
123
- return ''
124
- } catch {
125
- return ''
126
- }
105
+
106
+ /**
107
+ * 判断是否为 ARM64 并返回参数
108
+ */
109
+ async aarch64 () {
110
+ try {
111
+ /** 判断arch */
112
+ const arch = await this.execSync('uname -m')
113
+ if (arch && arch.includes('aarch64')) {
114
+ /** 提取 Redis 版本 */
115
+ const version = await this.execSync('redis-server -v')
116
+ if (version) {
117
+ /** 提取版本号 */
118
+ const RedisVersion = version.match(/v=(\d)./)
119
+ /** 如果>=6版本则忽略警告 */
120
+ if (RedisVersion && Number(RedisVersion[1]) >= 6) { return ' --ignore-warnings ARM64-COW-BUG' }
121
+ }
122
+ }
123
+ return ''
124
+ } catch {
125
+ return ''
126
+ }
127
127
  }
128
-
129
- execSync (cmd) {
130
- return new Promise((resolve, reject) => {
131
- exec(cmd, (error, stdout) => {
132
- if (error) { return reject(error) }
133
- resolve(stdout)
134
- })
135
- })
136
- }
137
- }
128
+
129
+ execSync (cmd) {
130
+ return new Promise((resolve, reject) => {
131
+ exec(cmd, (error, stdout) => {
132
+ if (error) { return reject(error) }
133
+ resolve(stdout)
134
+ })
135
+ })
136
+ }
137
+ }
@@ -1,113 +1,113 @@
1
- export default class RedisLevel {
2
- #private;
3
- id: string;
4
- constructor();
5
- /**
6
- * get 获取数据
7
- * @param {string} key 键
8
- * @returns {Promise<string>|Error} 数据
9
- */
10
- get(key: string): Promise<string | null>;
11
- /**
12
- * set 设置数据
13
- * @param {string} key 键
14
- * @param {string} value 值
15
- * @param {object} [options] 选项
16
- * @param [options.EX] 过期时间 单位秒
17
- * @returns {Promise<void>|Error}
18
- */
19
- set(key: string, value: string, options?: {
20
- EX: number;
21
- } | undefined): Promise<void>;
22
- /**
23
- * del 删除数据
24
- * @param {string} key 键
25
- * @returns {Promise<void>|Error}
26
- */
27
- del(key: string): Promise<void>;
28
- /**
29
- * keys 获取所有键
30
- * @param {string} [prefix] 前缀
31
- * @returns {Promise<string[]>|Error} 键列表
32
- */
33
- keys(prefix?: string): Promise<string[]>;
34
- /**
35
- * incr 递增数据
36
- * @param {string} key 键
37
- * @returns {Promise<number>|Error}
38
- */
39
- incr(key: string): Promise<number>;
40
- /**
41
- * decr 递减数据
42
- * @param {string} key 键
43
- * @returns {Promise<number>|Error}
44
- */
45
- decr(key: string): Promise<number>;
46
- /**
47
- * expire 设置过期时间
48
- * @param {string} key 键
49
- * @param seconds 过期时间 单位秒
50
- * @returns {Promise<number>|Error}
51
- */
52
- expire(key: string, seconds: number): Promise<number>;
53
- /**
54
- * ttl 获取过期时间
55
- * @param {string} key 键
56
- * @returns {Promise<number>|Error}
57
- */
58
- ttl(key: string): Promise<number>;
59
- /**
60
- * setEx 设置数据并设置过期时间
61
- * @param {string} key 键
62
- * @param seconds 过期时间 单位秒
63
- * @param {string} value 值
64
- * @returns {Promise<void>|Error}
65
- */
66
- setEx(key: string, seconds: number, value: string): Promise<void>;
67
- /**
68
- * exists 判断键是否存在
69
- * @param {string} key 键
70
- * @returns {Promise<number>|Error}
71
- */
72
- exists(key: string): Promise<number>;
73
- /**
74
- * zAdd 有序集合添加元素
75
- * @param {string} key 键
76
- * @param {object} data 数据
77
- * @param data.score 分数
78
- * @param {string} data.value 值
79
- */
80
- zAdd(key: string, { score, value }: {
81
- score: number;
82
- value: string;
83
- }): Promise<void>;
84
- /**
85
- * zRem 有序集合删除元素
86
- * @param {string} key 键
87
- * @param {string} value 值
88
- */
89
- zRem(key: string, value: string): Promise<void>;
90
- /**
91
- * zIncrBy 有序集合分数递增
92
- * @param {string} key 键
93
- * @param increment 递增值
94
- * @param {string} value 值
95
- * @returns {Promise<number>|Error}
96
- */
97
- zIncrBy(key: string, increment: number, value: string): Promise<number>;
98
- /**
99
- * zRangeByScore 有序集合根据分数范围获取元素
100
- * @param {string} key 键
101
- * @param min 最小分数
102
- * @param max 最大分数
103
- * @returns {Promise<string[]>|Error}
104
- */
105
- zRangeByScore(key: string, min: number, max: number): Promise<any[]>;
106
- /**
107
- * zScore 有序集合获取元素分数
108
- * @param {string} key 键
109
- * @param {string} value 值
110
- * @returns {Promise<number>|Error}
111
- */
112
- zScore(key: string, value: string): Promise<number | null>;
113
- }
1
+ export default class RedisLevel {
2
+ #private;
3
+ id: string;
4
+ constructor();
5
+ /**
6
+ * get 获取数据
7
+ * @param {string} key 键
8
+ * @returns {Promise<string>|Error} 数据
9
+ */
10
+ get(key: string): Promise<string | null>;
11
+ /**
12
+ * set 设置数据
13
+ * @param {string} key 键
14
+ * @param {string} value 值
15
+ * @param {object} [options] 选项
16
+ * @param [options.EX] 过期时间 单位秒
17
+ * @returns {Promise<void>|Error}
18
+ */
19
+ set(key: string, value: string, options?: {
20
+ EX: number;
21
+ } | undefined): Promise<void>;
22
+ /**
23
+ * del 删除数据
24
+ * @param {string} key 键
25
+ * @returns {Promise<void>|Error}
26
+ */
27
+ del(key: string): Promise<void>;
28
+ /**
29
+ * keys 获取所有键
30
+ * @param {string} [prefix] 前缀
31
+ * @returns {Promise<string[]>|Error} 键列表
32
+ */
33
+ keys(prefix?: string): Promise<string[]>;
34
+ /**
35
+ * incr 递增数据
36
+ * @param {string} key 键
37
+ * @returns {Promise<number>|Error}
38
+ */
39
+ incr(key: string): Promise<number>;
40
+ /**
41
+ * decr 递减数据
42
+ * @param {string} key 键
43
+ * @returns {Promise<number>|Error}
44
+ */
45
+ decr(key: string): Promise<number>;
46
+ /**
47
+ * expire 设置过期时间
48
+ * @param {string} key 键
49
+ * @param seconds 过期时间 单位秒
50
+ * @returns {Promise<number>|Error}
51
+ */
52
+ expire(key: string, seconds: number): Promise<number>;
53
+ /**
54
+ * ttl 获取过期时间
55
+ * @param {string} key 键
56
+ * @returns {Promise<number>|Error}
57
+ */
58
+ ttl(key: string): Promise<number>;
59
+ /**
60
+ * setEx 设置数据并设置过期时间
61
+ * @param {string} key 键
62
+ * @param seconds 过期时间 单位秒
63
+ * @param {string} value 值
64
+ * @returns {Promise<void>|Error}
65
+ */
66
+ setEx(key: string, seconds: number, value: string): Promise<void>;
67
+ /**
68
+ * exists 判断键是否存在
69
+ * @param {string} key 键
70
+ * @returns {Promise<number>|Error}
71
+ */
72
+ exists(key: string): Promise<number>;
73
+ /**
74
+ * zAdd 有序集合添加元素
75
+ * @param {string} key 键
76
+ * @param {object} data 数据
77
+ * @param data.score 分数
78
+ * @param {string} data.value 值
79
+ */
80
+ zAdd(key: string, { score, value }: {
81
+ score: number;
82
+ value: string;
83
+ }): Promise<void>;
84
+ /**
85
+ * zRem 有序集合删除元素
86
+ * @param {string} key 键
87
+ * @param {string} value 值
88
+ */
89
+ zRem(key: string, value: string): Promise<void>;
90
+ /**
91
+ * zIncrBy 有序集合分数递增
92
+ * @param {string} key 键
93
+ * @param increment 递增值
94
+ * @param {string} value 值
95
+ * @returns {Promise<number>|Error}
96
+ */
97
+ zIncrBy(key: string, increment: number, value: string): Promise<number>;
98
+ /**
99
+ * zRangeByScore 有序集合根据分数范围获取元素
100
+ * @param {string} key 键
101
+ * @param min 最小分数
102
+ * @param max 最大分数
103
+ * @returns {Promise<string[]>|Error}
104
+ */
105
+ zRangeByScore(key: string, min: number, max: number): Promise<any[]>;
106
+ /**
107
+ * zScore 有序集合获取元素分数
108
+ * @param {string} key 键
109
+ * @param {string} value 值
110
+ * @returns {Promise<number>|Error}
111
+ */
112
+ zScore(key: string, value: string): Promise<number | null>;
113
+ }