@ivujs/i-utils 1.1.18 → 2.1.0

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 (142) hide show
  1. package/README.md +122 -58
  2. package/dist/cjs/ID-card/index.cjs +95 -0
  3. package/dist/cjs/array/index.cjs +476 -0
  4. package/dist/cjs/clipboard/index.cjs +132 -0
  5. package/dist/cjs/color/index.cjs +207 -0
  6. package/dist/cjs/constants/date.cjs +178 -0
  7. package/dist/cjs/constants/id-card.cjs +52 -0
  8. package/dist/cjs/constants/keycode.cjs +117 -0
  9. package/dist/cjs/constants/lang.cjs +13 -0
  10. package/dist/cjs/constants/math.cjs +13 -0
  11. package/dist/cjs/constants/regexp.cjs +53 -0
  12. package/dist/cjs/constants/sort.cjs +15 -0
  13. package/dist/cjs/cookie/index.cjs +73 -0
  14. package/dist/cjs/crypto/base64/base64.cjs +540 -0
  15. package/dist/cjs/crypto/base64/index.cjs +82 -0
  16. package/dist/cjs/crypto/md5/index.cjs +49 -0
  17. package/dist/cjs/crypto/md5/md5.cjs +351 -0
  18. package/dist/cjs/crypto/sha256/index.cjs +95 -0
  19. package/dist/cjs/crypto/sha256/sha256.cjs +557 -0
  20. package/dist/cjs/crypto/sm3/index.cjs +27 -0
  21. package/dist/cjs/crypto/sm3/sm3.cjs +200 -0
  22. package/dist/cjs/crypto/sm4/index.cjs +101 -0
  23. package/dist/cjs/crypto/sm4/sm4.cjs +498 -0
  24. package/dist/cjs/date/index.cjs +1310 -0
  25. package/dist/cjs/desensitized/index.cjs +78 -0
  26. package/dist/cjs/device/index.cjs +154 -0
  27. package/dist/cjs/dom/index.cjs +132 -0
  28. package/dist/cjs/file/index.cjs +343 -0
  29. package/dist/cjs/function/index.cjs +72 -0
  30. package/dist/cjs/id/index.cjs +6 -2
  31. package/dist/cjs/index.cjs +383 -7
  32. package/dist/cjs/keycode/index.cjs +30 -0
  33. package/dist/cjs/math/index.cjs +310 -0
  34. package/dist/cjs/number/index.cjs +34 -0
  35. package/dist/cjs/object/index.cjs +319 -0
  36. package/dist/cjs/pagination/index.cjs +146 -0
  37. package/dist/cjs/random/index.cjs +27 -0
  38. package/dist/cjs/regexp/index.cjs +103 -0
  39. package/dist/cjs/storage/index.cjs +14 -0
  40. package/dist/cjs/storage/localStorage.cjs +37 -0
  41. package/dist/cjs/storage/sessionStorage.cjs +37 -0
  42. package/dist/cjs/string/index.cjs +361 -0
  43. package/dist/cjs/url/index.cjs +261 -0
  44. package/dist/cjs/validate/index.cjs +484 -0
  45. package/dist/es/ID-card/index.d.ts +36 -0
  46. package/dist/es/ID-card/index.mjs +89 -0
  47. package/dist/es/array/index.d.ts +209 -0
  48. package/dist/es/array/index.mjs +447 -0
  49. package/dist/es/clipboard/index.d.ts +32 -0
  50. package/dist/es/clipboard/index.mjs +126 -0
  51. package/dist/es/color/index.d.ts +55 -0
  52. package/dist/es/color/index.mjs +197 -0
  53. package/dist/es/constants/date.d.ts +4 -0
  54. package/dist/es/constants/date.mjs +176 -0
  55. package/dist/es/constants/id-card.d.ts +4 -0
  56. package/dist/es/constants/id-card.mjs +50 -0
  57. package/dist/es/constants/index.d.ts +11 -0
  58. package/dist/es/constants/keycode.d.ts +1 -0
  59. package/dist/es/constants/keycode.mjs +115 -0
  60. package/dist/es/constants/lang.d.ts +4 -0
  61. package/dist/es/constants/lang.mjs +11 -0
  62. package/dist/es/constants/math.d.ts +4 -0
  63. package/dist/es/constants/math.mjs +11 -0
  64. package/dist/es/constants/regexp.d.ts +4 -0
  65. package/dist/es/constants/regexp.mjs +51 -0
  66. package/dist/es/constants/sort.d.ts +4 -0
  67. package/dist/es/constants/sort.mjs +13 -0
  68. package/dist/es/cookie/index.d.ts +29 -0
  69. package/dist/es/cookie/index.mjs +67 -0
  70. package/dist/es/crypto/base64/base64.d.ts +8 -0
  71. package/dist/es/crypto/base64/base64.mjs +531 -0
  72. package/dist/es/crypto/base64/index.d.ts +53 -0
  73. package/dist/es/crypto/base64/index.mjs +73 -0
  74. package/dist/es/crypto/index.d.ts +8 -0
  75. package/dist/es/crypto/md5/index.d.ts +26 -0
  76. package/dist/es/crypto/md5/index.mjs +44 -0
  77. package/dist/es/crypto/md5/md5.d.ts +11 -0
  78. package/dist/es/crypto/md5/md5.mjs +349 -0
  79. package/dist/es/crypto/sha256/index.d.ts +52 -0
  80. package/dist/es/crypto/sha256/index.mjs +86 -0
  81. package/dist/es/crypto/sha256/sha256.d.ts +82 -0
  82. package/dist/es/crypto/sha256/sha256.mjs +548 -0
  83. package/dist/es/crypto/sm3/index.d.ts +13 -0
  84. package/dist/es/crypto/sm3/index.mjs +24 -0
  85. package/dist/es/crypto/sm3/sm3.d.ts +3 -0
  86. package/dist/es/crypto/sm3/sm3.mjs +197 -0
  87. package/dist/es/crypto/sm4/index.d.ts +56 -0
  88. package/dist/es/crypto/sm4/index.mjs +95 -0
  89. package/dist/es/crypto/sm4/sm4.d.ts +48 -0
  90. package/dist/es/crypto/sm4/sm4.mjs +490 -0
  91. package/dist/es/date/index.d.ts +608 -0
  92. package/dist/es/date/index.mjs +1222 -0
  93. package/dist/es/desensitized/index.d.ts +41 -0
  94. package/dist/es/desensitized/index.mjs +72 -0
  95. package/dist/es/device/index.d.ts +73 -0
  96. package/dist/es/device/index.mjs +140 -0
  97. package/dist/es/dom/index.d.ts +60 -0
  98. package/dist/es/dom/index.mjs +122 -0
  99. package/dist/es/file/index.d.ts +93 -0
  100. package/dist/es/file/index.mjs +327 -0
  101. package/dist/es/function/index.d.ts +26 -0
  102. package/dist/es/function/index.mjs +68 -0
  103. package/dist/es/id/index.d.ts +3 -0
  104. package/dist/es/id/index.mjs +6 -2
  105. package/dist/es/index.d.ts +26 -2
  106. package/dist/es/index.mjs +40 -4
  107. package/dist/es/keycode/index.d.ts +12 -0
  108. package/dist/es/keycode/index.mjs +27 -0
  109. package/dist/es/math/index.d.ts +66 -0
  110. package/dist/es/math/index.mjs +300 -0
  111. package/dist/es/number/index.d.ts +14 -0
  112. package/dist/es/number/index.mjs +31 -0
  113. package/dist/es/object/index.d.ts +84 -0
  114. package/dist/es/object/index.mjs +306 -0
  115. package/dist/es/pagination/index.d.ts +67 -0
  116. package/dist/es/pagination/index.mjs +140 -0
  117. package/dist/es/random/index.d.ts +18 -0
  118. package/dist/es/random/index.mjs +24 -0
  119. package/dist/es/regexp/index.d.ts +63 -0
  120. package/dist/es/regexp/index.mjs +92 -0
  121. package/dist/es/storage/index.d.ts +13 -0
  122. package/dist/es/storage/index.mjs +12 -0
  123. package/dist/es/storage/localStorage.d.ts +21 -0
  124. package/dist/es/storage/localStorage.mjs +32 -0
  125. package/dist/es/storage/sessionStorage.d.ts +21 -0
  126. package/dist/es/storage/sessionStorage.mjs +32 -0
  127. package/dist/es/string/index.d.ts +124 -0
  128. package/dist/es/string/index.mjs +342 -0
  129. package/dist/es/url/index.d.ts +118 -0
  130. package/dist/es/url/index.mjs +243 -0
  131. package/dist/es/validate/index.d.ts +231 -0
  132. package/dist/es/validate/index.mjs +447 -0
  133. package/dist/index.d.ts +2394 -2
  134. package/dist/lib/index.full.umd.js +8059 -29
  135. package/dist/lib/index.full.umd.min.js +2 -2
  136. package/dist/lib/index.full.umd.min.js.map +1 -1
  137. package/dist/resolver/auto-imports.cjs +345 -2
  138. package/dist/resolver/auto-imports.mjs +345 -2
  139. package/dist/resolver/index.cjs +1 -2
  140. package/dist/resolver/index.d.ts +1 -1
  141. package/dist/resolver/index.mjs +1 -2
  142. package/package.json +16 -7
package/dist/index.d.ts CHANGED
@@ -1,3 +1,1654 @@
1
+ /**
2
+ * 排序
3
+ */
4
+ declare const SORT: Record<string, number>;
5
+
6
+ /**
7
+ * 数学
8
+ */
9
+ declare const MATH: Record<string, any>;
10
+
11
+ /**
12
+ * 语言
13
+ */
14
+ declare const LANG: Record<string, any>;
15
+
16
+ /**
17
+ * 正则
18
+ */
19
+ declare const REGEXP: Record<string, RegExp>;
20
+
21
+ /**
22
+ * 日期
23
+ */
24
+ declare const DATE: Record<string, any>;
25
+
26
+ declare const KEYCODE: Record<string, string>;
27
+
28
+ /**
29
+ * 身份证号
30
+ */
31
+ declare const ID_CARD: Record<string, any>;
32
+
33
+ /**
34
+ * @module 字符串
35
+ */
36
+ /**
37
+ * 字符串中是否包含指定的元素
38
+ * @param {string} value 包含的元素
39
+ * @param {string} str 查找的字符串
40
+ * @returns {boolean} 返回true和false
41
+ */
42
+ declare function inString(value: string, str: string): boolean;
43
+ /**
44
+ * 去除字符串前后位置空格
45
+ * @param {string} value 参数
46
+ * @returns {string} 返回处理后的字符串
47
+ */
48
+ declare function trim(value: string): string;
49
+ /**
50
+ * 去除字符串开始位置的空格
51
+ * @param {string} value 参数
52
+ * @returns {string} 返回处理后的字符串
53
+ */
54
+ declare function trimStart(value: string): string;
55
+ /**
56
+ * 去除字符串结束位置的空格
57
+ * @param {string} value 参数
58
+ * @returns {string} 返回处理后的字符串
59
+ */
60
+ declare function trimEnd(value: string): string;
61
+ /**
62
+ * 去除字符串中全部的空格
63
+ * @param {string} value 参数
64
+ * @returns {string} 返回处理后的字符串
65
+ */
66
+ declare function trimAll(value: string): string;
67
+ /**
68
+ * 替换所有指定字符串为新的字符串
69
+ * @param {string} value 参数
70
+ * @param {string} oldSubstr 需要替换的字符串
71
+ * @param {string} newSubstr 替换后的字符串
72
+ * @returns {string} 返回处理后的字符串
73
+ */
74
+ declare function replaceAll(value: string, oldSubstr: string, newSubstr: string): string;
75
+ /**
76
+ * 字符串转大写
77
+ * @param {string} value 参数
78
+ * @returns {string} 返回处理后的字符串
79
+ */
80
+ declare function toUpperCase(value: string): string;
81
+ /**
82
+ * 字符串转小写
83
+ * @param {string} value 参数
84
+ * @returns {string} 返回处理后的字符串
85
+ */
86
+ declare function toLowerCase(value: string): string;
87
+ /**
88
+ * 转为 snake_case 下划线命名
89
+ * @description 支持 驼峰命名,短横命名,帕斯卡命名
90
+ * @param {string} value 参数
91
+ * @returns {string} 返回处理后的字符串
92
+ */
93
+ declare function toSnakeCase(value: string): string | undefined;
94
+ /**
95
+ * 转为 kebab-case 短横命名
96
+ * @description 支持 下划线,驼峰命名,帕斯卡命名
97
+ * @param {string} value 参数
98
+ * @returns {string} 返回处理后的字符串
99
+ */
100
+ declare function toKebabCase(value: string): string | undefined;
101
+ /**
102
+ * 转为 camelCase 驼峰命名
103
+ * @description 支持 下划线命名,短横命名,帕斯卡命名
104
+ * @param {string} value 参数
105
+ * @returns {string} 返回处理后的字符串
106
+ */
107
+ declare function toCamelCase(value: string): string;
108
+ /**
109
+ * 转为 PascalCase 帕斯卡命名
110
+ * @description 支持 下划线命名,短横命名,驼峰命名
111
+ * @param {string} value 参数
112
+ * @returns {string} 返回处理后的字符串
113
+ */
114
+ declare function toPascalCase(value: string): string;
115
+ /**
116
+ * 数字前补齐0达到指定位数
117
+ * @description 相当于原生的 padStart(2,'0')
118
+ * @param {number|string} value 补零的数字
119
+ * @param {number} maxLength 补齐0后的最大长度,默认2位
120
+ * @returns {string} 返回补0后指定位数的字符串
121
+ */
122
+ declare function zeroStart(value: string, maxLength?: number): string;
123
+ /**
124
+ * 数字后补齐0达到指定位数
125
+ * @description 相当于原生的 padEnd(2,'0')
126
+ * @param {number|string} value 补零的数字
127
+ * @param {number} maxLength 补齐0后的最大长度,默认2位
128
+ * @returns {string} 返回补0后指定位数的字符串
129
+ */
130
+ declare function zeroEnd(value: string, maxLength?: number): string;
131
+ /**
132
+ * 格式化为标题样式
133
+ * @param {string} value 字符串值
134
+ * @returns {string} 返回格式化后的标题样式
135
+ */
136
+ declare function formatTitle(value: string): string;
137
+ /**
138
+ * 格式化字符串模版
139
+ * @param {string} value 字符串值
140
+ * @param {Object} data 模版数据
141
+ * @returns {string} 返回格式化后的模版字符串
142
+ */
143
+ declare function formatTemplate(value: string, data: Record<any, any>): string;
144
+ /**
145
+ * 格式化千分位数字
146
+ * @description 支持任意数据传参,如果非数字则不会格式化,并返回原数据
147
+ * @param {number|string} num 数字
148
+ * @returns {string} 返回格式化后的千分位数字
149
+ */
150
+ declare function formatThousand(num: number | string): string;
151
+ /**
152
+ * 格式化人民币金额大写
153
+ * @param {number|string} money 金额
154
+ * @returns {string} 返回金额大写
155
+ */
156
+ declare function formatRmbChinese(money: number | string): string;
157
+
158
+ /**
159
+ * 转为数字类型
160
+ * @description 解决部分浏览器在转换 '08','09'等是0开头时被默认转8进制问题
161
+ * @param {string|number} value 转换的值
162
+ * @param {number} radix 进制数,默认10进制
163
+ * @returns {number} 返回转换后的数字
164
+ */
165
+ declare function parseInt(value: string | number, radix?: number): number;
166
+ /**
167
+ * 转为小数类型
168
+ * @param {string|number} value 转换的值
169
+ * @returns {number} 返回转换后的数字
170
+ */
171
+ declare function parseFloat(value: string | number): number;
172
+
173
+ /**
174
+ * 数组最小值
175
+ * @param {Array} array 数组
176
+ * @returns {number} 返回最小值
177
+ */
178
+ declare function arrayMin(array: any[]): number;
179
+ /**
180
+ * 数组最大值
181
+ * @param {array} array 数组
182
+ * @returns {number} 返回最大值
183
+ */
184
+ declare function arrayMax(array: any[]): number;
185
+ /**
186
+ * 数组求和
187
+ * @param {Array} array 数组
188
+ * @returns {number} 返回和
189
+ */
190
+ declare function arraySum(array: any[]): any;
191
+ /**
192
+ * 数组求平均值
193
+ * @param {Array} array 数组
194
+ * @returns {number} 返回平均数
195
+ */
196
+ declare function arrayAvg(array: any[]): number;
197
+ /**
198
+ * 数组中是否包含指定的元素
199
+ * @param {string|number} value 元素
200
+ * @param {Array} array 查找的数组
201
+ * @returns {boolean} 返回结果
202
+ */
203
+ declare function inArray(value: string | number, array: any[]): boolean;
204
+ /**
205
+ * 比较两个数组是否相等
206
+ * @param {Array} array1 数组1
207
+ * @param {Array} array2 数组2
208
+ * @returns {boolean} 返回结果
209
+ */
210
+ declare function arrayEquals(array1: any[], array2: any[]): boolean;
211
+ /**
212
+ * 生成指定长度的数组
213
+ * @param {number} length 长度,默认 0
214
+ * @returns {Array} 返回数组
215
+ */
216
+ declare function arrayCreate(length?: number): number[];
217
+ /**
218
+ * 数组指定位置添加元素
219
+ * @description 如果数组为空,则在0位置添加元素
220
+ * @param {Array} array 数组
221
+ * @param {number} index 下标位置,默认0
222
+ * @param {*} value 添加的元素
223
+ * @returns {Array} 返回操作后的数组
224
+ */
225
+ declare function arrayInsert(array?: any[], index?: number, value?: any): any[];
226
+ /**
227
+ * 数组指定位置前面添加元素
228
+ * @description 如果数组为空,则在0位置添加元素
229
+ * @param {Array} array 数组
230
+ * @param {number} index 下标位置,默认0
231
+ * @param {*} value 添加的元素
232
+ * @returns {Array} 返回操作后的数组
233
+ */
234
+ declare function arrayInsertBefore(array?: any[], index?: number, value?: any): any[];
235
+ /**
236
+ * 数组指定位置后面添加元素
237
+ * @description 如果数组为空,则在0位置添加元素
238
+ * @param {Array} array 数组
239
+ * @param {number} index 下标位置,默认0
240
+ * @param {*} value 添加的元素
241
+ * @returns {Array} 返回操作后的数组
242
+ */
243
+ declare function arrayInsertAfter(array?: any[], index?: number, value?: any): any[];
244
+ /**
245
+ * 数组指定位置删除元素
246
+ * @param {Array} array 数组
247
+ * @param {number} index 下标位置,默认0
248
+ * @returns {Array} 返回操作后的数组
249
+ */
250
+ declare function arrayRemove(array?: any[], index?: number): any[];
251
+ /**
252
+ * 数组指定位置前面删除元素
253
+ * @param {Array} array 数组
254
+ * @param {number} index 下标位置,默认0
255
+ * @returns {Array} 返回操作后的数组
256
+ */
257
+ declare function arrayRemoveBefore(array?: any[], index?: number): any[];
258
+ /**
259
+ * 数组指定位置后面删除元素
260
+ * @param {Array} array 数组
261
+ * @param {number} index 下标位置,默认0
262
+ * @returns {Array} 返回操作后的数组
263
+ */
264
+ declare function arrayRemoveAfter(array?: any[], index?: number): any[];
265
+ /**
266
+ * 数组置顶
267
+ * @param {Array} array 数组
268
+ * @param {number} index 下标位置,默认0
269
+ * @returns {Array} 返回操作后的数组
270
+ */
271
+ declare function arrayTop(array?: any[], index?: number): any[];
272
+ /**
273
+ * 数组置尾
274
+ * @param {Array} array 数组
275
+ * @param {number} index 下标位置,默认0
276
+ * @returns {Array} 返回操作后的数组
277
+ */
278
+ declare function arrayBottom(array?: any[], index?: number): any[];
279
+ /**
280
+ * 数组向上移动
281
+ * @param {Array} array 数组
282
+ * @param {number} index 下标位置,默认0
283
+ * @returns {Array} 返回操作后的数组
284
+ */
285
+ declare function arrayUp(array?: any[], index?: number): any[];
286
+ /**
287
+ * 数组向下移动
288
+ * @param {Array} array 数组
289
+ * @param {number} index 下标位置,默认0
290
+ * @returns {Array} 返回操作后的数组
291
+ */
292
+ declare function arrayDown(array?: any[], index?: number): any[];
293
+ /**
294
+ * 数组交换元素
295
+ * @param {Array} array 数组
296
+ * @param {number} sourceIndex 原索引
297
+ * @param {number} targetIndex 目标索引
298
+ * @returns {Array} 返回操作后的数组
299
+ */
300
+ declare function arraySwap(array: any[], sourceIndex: number, targetIndex: number): any[];
301
+ /**
302
+ * 数组排序
303
+ * @param {Array} array 数组
304
+ * @param {number} mode 排序模式,参考常量集合中 数组常量,默认是升序
305
+ * @returns {Array} 返回操作后的数组
306
+ */
307
+ declare function arraySort(array: any[], mode?: number): any[];
308
+ /**
309
+ * 数组属性混合排序
310
+ * @description 排序默认为asc升序
311
+ * @param {Array} array 数组
312
+ * @param {Array} props 排序的属性
313
+ * @returns {Array} 返回操作后的数组
314
+ */
315
+ declare function arraySortBy(array: any[], props: any[]): any[];
316
+ /**
317
+ * 数组元素去重
318
+ * @param {Array} array 数组
319
+ * @returns {Array} 返回操作后的数组
320
+ */
321
+ declare function arrayUnique(array: any[]): any[];
322
+ /**
323
+ * 数组打乱元素
324
+ * @description 可以适用于一些抽奖人员列表打乱顺序
325
+ * @param {Array} array 数组
326
+ * @returns {Array} 返回操作后的数组
327
+ */
328
+ declare function arrayShuffle(array: any[]): any[];
329
+ /**
330
+ * 普通数组转树形结构
331
+ * @description 包含id和pid属性关系的一维数组,转为children的树形结构
332
+ * @param {Array} array 数组
333
+ * @param {Object} setting 配置项
334
+ * @returns {Array} 返回树形节点
335
+ */
336
+ declare function arrayToTree(array: any[], setting?: {
337
+ key: string;
338
+ parentKey: string;
339
+ childrenKey: string;
340
+ }): any[];
341
+ /**
342
+ * 树形结构转普通数组
343
+ * @param {Array} nodes 树形节点
344
+ * @param {Object} setting 配置项
345
+ * @returns {Array} 返回普通数组
346
+ */
347
+ declare function treeToArray(nodes: any[], setting?: {
348
+ childrenKey: string;
349
+ }): any[];
350
+ /**
351
+ * 数组求并集
352
+ * @description 数组1 和 数组2 合并一起的元素集合
353
+ * @param {Array} array1 数组1
354
+ * @param {Array} array2 数组2
355
+ * @returns {Array} 返回数组
356
+ */
357
+ declare function arrayUnion(array1: any[], array2: any[]): any[];
358
+ /**
359
+ * 数组求交集
360
+ * @description 数组1 和 数组2 相同的元素集合
361
+ * @param {Array} array1 数组1
362
+ * @param {Array} array2 数组2
363
+ * @returns {Array} 返回数组
364
+ */
365
+ declare function arrayIntersect(array1: any[], array2: any[]): any[];
366
+ /**
367
+ * 数组求差集
368
+ * @description 数组1 中不包含 数组2 的元素集合
369
+ * @param {Array} array1 数组1
370
+ * @param {Array} array2 数组2
371
+ * @returns {Array} 返回数组
372
+ */
373
+ declare function arrayDifference(array1: any[], array2: any[]): any[];
374
+ /**
375
+ * 数组求补集
376
+ * @description 数组1 和 数组2 不相同的元素集合
377
+ * @param {Array} array1 数组1
378
+ * @param {Array} array2 数组2
379
+ * @returns {Array} 返回数组
380
+ */
381
+ declare function arrayComplement(array1: any[], array2: any[]): any[];
382
+
383
+ /**
384
+ * map转object
385
+ * @param {Map} map 参数
386
+ * @returns {Object} 返回Object
387
+ */
388
+ declare function mapToObject(map: Map<any, any>): Record<any, any>;
389
+ /**
390
+ * map转json字符串
391
+ * @param {Map} map 参数
392
+ * @returns {string} 返回Json字符串
393
+ */
394
+ declare function mapToJson(map: Map<any, any>): string;
395
+ /**
396
+ * object转map
397
+ * @param {Object} obj 参数
398
+ * @returns {Map} 返回Map
399
+ */
400
+ declare function objectToMap(obj: Record<any, any>): Map<any, any>;
401
+ /**
402
+ * json字符串转map
403
+ * @param {string} json json字符串
404
+ * @returns {Map} 返回Map
405
+ */
406
+ declare function jsonToMap(json: string): Map<any, any>;
407
+ /**
408
+ * json对象转json字符串
409
+ * @param {Object} json json对象
410
+ * @param {boolean} replacer 是否处理循环引用
411
+ * @returns {string} 返回Json字符串
412
+ */
413
+ declare function stringifyJson(json: Record<any, any>, replacer?: boolean): string;
414
+ /**
415
+ * json字符串转json对象
416
+ * @param {string} json json字符串
417
+ * @returns {Object} 返回Json对象
418
+ */
419
+ declare function parseJson(json: string): Record<any, any> | null;
420
+ /**
421
+ * 浅拷贝数据
422
+ * @param {*} source 拷贝的数据
423
+ * @returns {*} 返回浅拷贝的数据
424
+ */
425
+ declare function clone(source: any): any;
426
+ /**
427
+ * 深拷贝数据
428
+ * @param {*} source 拷贝的数据
429
+ * @returns {*} 返回深拷贝的数据
430
+ */
431
+ declare function deepClone(source: any): any;
432
+ /**
433
+ * 比较两个对象是否相等
434
+ * @description 方法只能对比简单的对象,不能包含function,另外对象的属性顺序不一致也是相等的
435
+ * @param {Object} obj1 对象1
436
+ * @param {Object} obj2 对象2
437
+ * @returns {boolean} 返回true和false
438
+ */
439
+ declare function objectEquals(obj1: Record<any, any>, obj2: Record<any, any>): boolean;
440
+ /**
441
+ * 合并对象
442
+ * @param {Object} target 目标对象
443
+ * @param {Object[]} source 原对象列表
444
+ * @returns {Object} 返回合并后的对象
445
+ */
446
+ declare function merge(target: Record<any, any>, ...source: Record<any, any>[]): any;
447
+ /**
448
+ * 根据字符串属性路径获取目标对象的值
449
+ * @example
450
+ * let res = {code:200, data:{rows:[], pages:{current:1,pageSize:20}}}
451
+ * this._getValueByPath(res, 'data.pages.pageSize'); // 这里会输出20
452
+ * @param {Object} target 目标对象
453
+ * @param {string} path 字符串属性路径
454
+ * @returns {Object} 返回目标对象
455
+ */
456
+ declare function getValueByPath(target: Record<any, any>, path?: string): any;
457
+ /**
458
+ * 根据字符串属性路径设置目标对象的值
459
+ * @example
460
+ * let res = {code:200, data:{rows:[], pages:{current:1,pageSize:20}}}
461
+ * this._setValueByPath(res, 'data.pages.pageSize', 30); // 打印res对象会发现pageSize的值改为了30
462
+ * @param {Object} target 目标对象
463
+ * @param {string} path 字符串属性路径
464
+ * @param {*} value 值
465
+ */
466
+ declare function setValueByPath(target: Record<any, any>, path: string | undefined, value: any): Record<any, any>;
467
+
468
+ /**
469
+ * @module 函数
470
+ */
471
+ /**
472
+ * 防抖函数
473
+ * @description 事件执行后,在延迟时间内如果再次执行,会清空定时器重新延迟执行,举例:用户在输入框进行输入搜索,最终是会获取到最后一次输入,节约请求资源
474
+ * @param {Function} fn 目标函数
475
+ * @param {number} delay 延迟时间,单位毫秒,默认 1*1000 毫秒
476
+ * @param {boolean} immediate 是否立即执行,默认true
477
+ * @returns {Function} 返回function()
478
+ */
479
+ declare function debounce<T extends (...args: any[]) => any>(fn: T, delay?: number, immediate?: boolean): (this: ThisParameterType<T>, ...args: Parameters<T>) => void;
480
+ /**
481
+ * 节流函数
482
+ * @description 高频触发时,在指定时间间隔内只执行一次,举例:监听页面滚动,不会频繁触发,只会在固定时间内获取一次
483
+ * @param {Function} fn 目标函数
484
+ * @param {number} interval 时间间隔,单位毫秒,默认1000毫秒
485
+ * @returns {Function} 返回function()
486
+ */
487
+ declare function throttle<T extends (...args: any[]) => any>(fn: T, interval?: number): (this: ThisParameterType<T>, ...args: Parameters<T>) => void;
488
+ /**
489
+ * 睡眠延迟执行
490
+ * @description 需要配合 async/await 来达到延迟效果
491
+ * @param {number} delay 延迟时间,单位毫秒,默认1000毫秒
492
+ */
493
+ declare function sleep(delay?: number): Promise<unknown>;
494
+
495
+ /**
496
+ 日期配置类型
497
+ @param format 日期格式字符串,支持的占位符如下:
498
+ | 占位符 | 说明 | 示例(2025-01-05 08:05:08 周一) |
499
+ |--------|-----------------------|---------------------------------|
500
+ | yyyy | 4 位年份 | 2025 |
501
+ | yy | 2 位年份 | 25 |
502
+ | MM | 2 位月份(补 0) | 01 |
503
+ | M | 1 位月份(不补 0) | 1 |
504
+ | dd | 2 位日期(补 0) | 05 |
505
+ | d | 1 位日期(不补 0) | 5 |
506
+ | HH | 24 小时制(2 位,补 0) | 08 |
507
+ | H | 24 小时制(1 位,不补 0)| 8 |
508
+ | hh | 12 小时制(2 位,补 0) | 08 |
509
+ | h | 12 小时制(1 位,不补 0)| 8 |
510
+ | mm | 2 位分钟(补 0) | 05 |
511
+ | m | 1 位分钟(不补 0) | 5 |
512
+ | ss | 2 位秒数(补 0) | 08 |
513
+ | s | 1 位秒数(不补 0) | 8 |
514
+ | SSS | 3 位毫秒(补 0) | 123 |
515
+ | S | 1 位毫秒(不补 0) | 1 |
516
+ | E | 周几(迷你名) | 一(zh) / Mon(en) |
517
+ | EE | 周几(短名) | 周一(zh) / Mon(en) |
518
+ | EEE | 周几(全名) | 星期一(zh) / Monday(en) |
519
+ | Q | 季度(迷你名) | 1(zh) / 1(en) |
520
+ | QQ | 季度(短名) | Q1(zh) / Q1(en) |
521
+ | QQQ | 季度(全名) | 第一季度(zh) / Quarter 1(en)|
522
+ | a | 上午 / 下午(小写) | am /pm |
523
+ | A | 上午 / 下午(大写) | AM / PM |
524
+ | aa | 上午 / 下午(中文) | 上午 / 下午 |
525
+ | AA | 上午 / 下午(中文大写) | 上午 / 下午 |
526
+ @example
527
+ yyyy-MM-dd HH:mm:ss → 2025-01-05 08:05:08
528
+ yyyy-M-d h:m:s → 2025-1-5 8:5:8
529
+ yyyy-MM-dd EE → 2025-01-05 周一
530
+ @param lang 语言,可选值:zh(默认)/ en
531
+ */
532
+ interface DateOptions {
533
+ format?: string;
534
+ lang?: string;
535
+ }
536
+ /**
537
+ * 今天
538
+ *@returns {string} 返回日期字符串
539
+ */
540
+ declare function today(): string;
541
+ /**
542
+ * 昨天
543
+ * @returns {string} 返回日期字符串
544
+ */
545
+ declare function yesterday(): string;
546
+ /**
547
+ * 明天
548
+ *@returns {string} 返回日期字符串
549
+ */
550
+ declare function tomorrow(): string;
551
+ /**
552
+ * 上周(7天前日期)
553
+ * @param {Date} date 日期参数,默认当前日期
554
+ * @returns {string} 返回日期字符串
555
+ */
556
+ declare function lastWeek(date?: Date): string;
557
+ /**
558
+ * 下周(7天后日期)
559
+ * @param {Date} date 日期参数,默认当前日期
560
+ * @returns {string} 返回日期字符串
561
+ */
562
+ declare function nextWeek(date?: Date): string;
563
+ /**
564
+ * 上个月(30天前日期)
565
+ * @param {Date} date 日期参数,默认当前日期
566
+ * @returns {string} 返回日期字符串
567
+ */
568
+ declare function lastMonth(date?: Date): string;
569
+ /**
570
+ * 下个月(30天后日期)
571
+ * @param {Date} date 日期参数,默认当前日期
572
+ * @returns {string} 返回日期字符串
573
+ */
574
+ declare function nextMonth(date?: Date): string;
575
+ /**
576
+ * 上一年(365天前日期)
577
+ * @param {Date} date 日期参数,默认当前日期
578
+ * @returns {string} 返回日期字符串
579
+ */
580
+ declare function lastYear(date?: Date): string;
581
+ /**
582
+ * 下一年(365天后日期)
583
+ * @param {Date} date 日期参数,默认当前日期
584
+ * @returns {string} 返回日期字符串
585
+ */
586
+ declare function nextYear(date?: Date): string;
587
+ /**
588
+ * 是否为上午
589
+ * @param {Date} date 日期参数,默认当前日期
590
+ * @returns {boolean} 返回结果
591
+ */
592
+ declare function isAM(date?: Date): boolean;
593
+ /**
594
+ * 是否为下午
595
+ * @param {Date} date 日期参数,默认当前日期
596
+ * @returns {boolean} 返回结果
597
+ */
598
+ declare function isPM(date?: Date): boolean;
599
+ /**
600
+ * 是否为今天
601
+ * @param {Date} date 日期参数,默认当前日期
602
+ * @returns {boolean} 返回结果
603
+ */
604
+ declare function isToday(date?: Date): boolean;
605
+ /**
606
+ * 是否为昨天
607
+ * @param {Date} date 日期参数,默认当前日期
608
+ * @returns {boolean} 返回结果
609
+ */
610
+ declare function isYesterday(date?: Date): boolean;
611
+ /**
612
+ * 是否为前天
613
+ * @param {Date} date 日期参数,默认当前日期
614
+ * @returns {boolean} 返回结果
615
+ */
616
+ declare function isBeforeYesterday(date?: Date): boolean;
617
+ /**
618
+ * 是否为明天
619
+ * @param {Date} date 日期参数,默认当前日期
620
+ * @returns {boolean} 返回结果
621
+ */
622
+ declare function isTomorrow(date?: Date): boolean;
623
+ /**
624
+ * 是否为后天
625
+ * @param {Date} date 日期参数,默认当前日期
626
+ * @returns {boolean} 返回结果
627
+ */
628
+ declare function isAfterTomorrow(date?: Date): boolean;
629
+ /**
630
+ * 是否为工作日
631
+ * @param {Date} date 日期参数,默认当前日期
632
+ * @returns {boolean} 返回结果
633
+ */
634
+ declare function isWorkday(date?: Date): boolean;
635
+ /**
636
+ * 是否为周末(周六和周日)
637
+ * @param {Date} date 日期参数,默认当前日期
638
+ * @returns {boolean} 返回结果
639
+ */
640
+ declare function isWeekend(date?: Date): boolean;
641
+ /**
642
+ * 是否为本周第一天
643
+ * @param {Date} date 日期参数,默认当前日期
644
+ * @returns {boolean} 返回结果
645
+ */
646
+ declare function isFirstDayOfWeek(date?: Date): boolean;
647
+ /**
648
+ * 是否为本周最后一天
649
+ * @param {Date} date 日期参数,默认当前日期
650
+ * @returns {boolean} 返回结果
651
+ */
652
+ declare function isLastDayOfWeek(date?: Date): boolean;
653
+ /**
654
+ * 是否为本月第一天
655
+ * @param {Date} date 日期参数,默认当前日期
656
+ * @returns {boolean} 返回结果
657
+ */
658
+ declare function isFirstDayOfMonth(date?: Date): boolean;
659
+ /**
660
+ * 是否为本月最后一天
661
+ * @param {Date} date 日期参数,默认当前日期
662
+ * @returns {boolean} 返回结果
663
+ */
664
+ declare function isLastDayOfMonth(date?: Date): boolean;
665
+ /**
666
+ * 是否为本年第一天
667
+ * @param {Date} date 日期参数,默认当前日期
668
+ * @returns {boolean} 返回结果
669
+ */
670
+ declare function isFirstDayOfYear(date?: Date): boolean;
671
+ /**
672
+ * 是否为本年最后一天
673
+ * @param {Date} date 日期参数,默认当前日期
674
+ * @returns {boolean} 返回结果
675
+ */
676
+ declare function isLastDayOfYear(date?: Date): boolean;
677
+ /**
678
+ * 是否为闰年
679
+ * @description 闰年366天,平年365天
680
+ * @param {Date} date 日期参数,默认当前日期
681
+ * @returns {boolean} 返回结果
682
+ */
683
+ declare function isLeapYear(date?: Date): boolean;
684
+ /**
685
+ * 是否为平年
686
+ * @description 闰年366天,平年365天
687
+ * @param {Date} date 日期参数,默认当前日期
688
+ * @returns {boolean} 返回结果
689
+ */
690
+ declare function isCommonYear(date?: Date): boolean;
691
+ /**
692
+ * 是否在日期之前
693
+ * @param {Date} startDate 开始日期
694
+ * @param {Date} endDate 结束日期,默认当前日期
695
+ * @returns {boolean} 返回结果
696
+ */
697
+ declare function isBefore(startDate: Date, endDate?: Date): boolean;
698
+ /**
699
+ * 是否在日期之后
700
+ * @param {Date} startDate 开始日期
701
+ * @param {Date} endDate 结束日期,默认当前日期
702
+ * @returns {boolean} 返回结果
703
+ */
704
+ declare function isAfter(startDate: Date, endDate?: Date): boolean;
705
+ /**
706
+ * 是否在两个日期之间
707
+ * @param {Date} date 要比较的日期
708
+ * @param {Date} startDate 开始日期
709
+ * @param {Date} endDate 结束日期
710
+ * @returns {boolean} 返回结果
711
+ */
712
+ declare function isBetween(date: Date, startDate: Date, endDate: Date): boolean;
713
+ /**
714
+ * 两个日期是否为同一天
715
+ * @param {Date} startDate 开始日期
716
+ * @param {Date} endDate 结束日期
717
+ * @returns {boolean} 返回结果
718
+ */
719
+ declare function isSame(startDate: Date, endDate: Date): boolean;
720
+ /**
721
+ * 两个日期是否为同一周
722
+ * @param {Date} startDate 开始日期
723
+ * @param {Date} endDate 结束日期
724
+ * @returns {boolean} 返回结果
725
+ */
726
+ declare function isSameWeek(startDate: Date, endDate: Date): boolean;
727
+ /**
728
+ * 两个日期是否为同一个月
729
+ * @param {Date} startDate 开始日期
730
+ * @param {Date} endDate 结束日期
731
+ * @returns {boolean} 返回结果
732
+ */
733
+ declare function isSameMonth(startDate: Date, endDate: Date): boolean;
734
+ /**
735
+ * 两个日期是否为同一年
736
+ * @param {Date} startDate 开始日期
737
+ * @param {Date} endDate 结束日期
738
+ * @returns {boolean} 返回结果
739
+ */
740
+ declare function isSameYear(startDate: Date, endDate: Date): boolean;
741
+ /**
742
+ * 两个日期是否相同或之前
743
+ * @param {Date} startDate 开始日期
744
+ * @param {Date} endDate 结束日期
745
+ * @returns {boolean} 返回结果
746
+ */
747
+ declare function isSameOrBefore(startDate: Date, endDate: Date): boolean;
748
+ /**
749
+ * 两个日期是否相同或之后
750
+ * @param {Date} startDate 开始日期
751
+ * @param {Date} endDate 结束日期
752
+ * @returns {boolean} 返回结果
753
+ */
754
+ declare function isSameOrAfter(startDate: Date, endDate: Date): boolean;
755
+ /**
756
+ * 获得此刻的日期
757
+ * @returns {Date} 返回日期
758
+ */
759
+ declare function getNow(): Date;
760
+ /**
761
+ * 获得当前日期字符串
762
+ * @param {Date} date 日期参数,默认当前日期
763
+ * @param options 配置项 配置项
764
+ * @returns {string} 返回日期字符串
765
+ */
766
+ declare function getDate(date?: Date, options?: DateOptions): string;
767
+ /**
768
+ * 获得当前日期时间字符串
769
+ * @param {Date} date 日期参数,默认当前日期
770
+ * @param options 配置项 配置项
771
+ * @returns {string} 返回日期时间字符串
772
+ */
773
+ declare function getDateTime(date?: Date, options?: DateOptions): string;
774
+ /**
775
+ * 获取当前时间戳
776
+ * @param {Date} date 日期参数,默认当前日期
777
+ * @returns {number} 返回时间戳
778
+ */
779
+ declare function getTimestamp(date?: Date): number;
780
+ /**
781
+ * 获取当前Unix时间戳
782
+ * @param {Date} date 日期参数,默认当前日期
783
+ * @returns {number} 返回Unix时间戳
784
+ */
785
+ declare function getUnixTimestamp(date?: Date): number;
786
+ /**
787
+ * 获得当前日期的对象形式
788
+ * @param {Date} date 日期参数,默认当前日期
789
+ * @returns {Object} 返回日期的对象形式
790
+ */
791
+ declare function getDateObject(date?: Date): {
792
+ year: number;
793
+ month: number;
794
+ date: number;
795
+ hours: number;
796
+ minutes: number;
797
+ seconds: number;
798
+ milliseconds: number;
799
+ };
800
+ /**
801
+ * 获得当前日期的数组形式
802
+ * @param {Date} date 日期参数,默认当前日期
803
+ * @returns {Object} 返回日期的数组形式
804
+ */
805
+ declare function getDateArray(date?: Date): number[];
806
+ /**
807
+ * 获得当前日期是周几
808
+ * @param {Date} date 日期参数,默认当前日期
809
+ * @param options 配置项
810
+ * @returns {number|string} 返回周几,会根据语言返回
811
+ */
812
+ declare function getWeek(date?: Date, options?: DateOptions): number | string;
813
+ /**
814
+ * 获得当前日期是第几季度
815
+ * @param {Date} date 日期参数,默认当前日期
816
+ * @param options 配置项
817
+ * @returns {number|string} 返回第几季度,会根据语言返回
818
+ */
819
+ declare function getQuarter(date?: Date, options?: DateOptions): number | string;
820
+ /**
821
+ * 获得当前日期是所在周的第几天
822
+ * @param {Date} date 日期参数,默认当前日期
823
+ * @returns {number|string} 返回天数
824
+ */
825
+ declare function getDayOfWeek(date?: Date): number | string;
826
+ /**
827
+ * 获得当前日期是所在月的第几天
828
+ * @param {Date} date 日期参数,默认当前日期
829
+ * @returns {number} 返回天数
830
+ */
831
+ declare function getDayOfMonth(date?: Date): number;
832
+ /**
833
+ * 获得当前日期是所在年的第几天
834
+ * @param {Date} date 日期参数,默认当前日期
835
+ * @returns {number} 返回天数
836
+ */
837
+ declare function getDayOfYear(date?: Date): number;
838
+ /**
839
+ * 获得当前日期是所在月的第几周
840
+ * @param {Date} date 日期参数,默认当前日期
841
+ * @returns {number} 返回周数
842
+ */
843
+ declare function getWeekOfMonth(date?: Date): number;
844
+ /**
845
+ * 获得当前日期是所在年的第几周
846
+ * @param {Date} date 日期参数,默认当前日期
847
+ * @returns {number} 返回周数
848
+ */
849
+ declare function getWeekOfYear(date?: Date): number;
850
+ /**
851
+ * 获得当前日期所在的周共几天
852
+ * @returns {number} 返回天数
853
+ */
854
+ declare function getDaysOfWeek(): number;
855
+ /**
856
+ * 获得当前日期所在的月共几天
857
+ * @param {Date} date 日期参数,默认当前日期
858
+ * @returns {number} 返回天数
859
+ */
860
+ declare function getDaysOfMonth(date?: Date): number;
861
+ /**
862
+ * 获得当前日期所在的年共几天
863
+ * @param {Date} date 日期参数,默认当前日期
864
+ * @returns {number} 返回天数
865
+ */
866
+ declare function getDaysOfYear(date?: Date): number;
867
+ /**
868
+ * 获得当前日期是所在月的第几周
869
+ * @param {Date} date 日期参数,默认当前日期
870
+ * @returns {number} 返回周数
871
+ */
872
+ declare function getWeeksOfMonth(date?: Date): number;
873
+ /**
874
+ * 获得当前日期是所在年的第几周
875
+ * @param {Date} date 日期参数,默认当前日期
876
+ * @returns {number} 返回周数
877
+ */
878
+ declare function getWeeksOfYear(date?: Date): number;
879
+ /**
880
+ * 获得当前日期所在周的第一天
881
+ * @param {Date} date 日期参数,默认当前日期
882
+ * @returns {string} 返回日期字符串
883
+ */
884
+ declare function getFirstDateOfWeek(date?: Date): string;
885
+ /**
886
+ * 获得当前日期所在周的最后一天
887
+ * @param {Date} date 日期参数,默认当前日期
888
+ * @returns {string} 返回日期字符串
889
+ */
890
+ declare function getLastDateOfWeek(date?: Date): string;
891
+ /**
892
+ * 获取当前日期所在周的所有日期
893
+ * @param {Date} date 日期参数,默认当前日期
894
+ * @returns {string[]} 返回日期数组
895
+ */
896
+ declare function getFullDateOfWeek(date?: Date): string[];
897
+ /**
898
+ * 获得当前日期所在月的第一天
899
+ * @param {Date} date 日期参数,默认当前日期
900
+ * @returns {string} 返回日期字符串
901
+ */
902
+ declare function getFirstDateOfMonth(date?: Date): string;
903
+ /**
904
+ * 获得当前日期所在月的最后一天
905
+ * @param {Date} date 日期参数,默认当前日期
906
+ * @returns {string} 返回日期字符串
907
+ */
908
+ declare function getLastDateOfMonth(date?: Date): string;
909
+ /**
910
+ * 获取当前日期所在月的所有日期
911
+ * @param {Date} date 日期参数,默认当前日期
912
+ * @returns {string[]} 返回日期数组
913
+ */
914
+ declare function getFullDateOfMonth(date?: Date): string[];
915
+ /**
916
+ * 获取当前日期所在年的第一天
917
+ * @param {Date} date 日期参数,默认当前日期
918
+ * @returns {string} 返回日期字符串
919
+ */
920
+ declare function getFirstDateOfYear(date?: Date): string;
921
+ /**
922
+ * 获取当前日期所在年的最后一天
923
+ * @param {Date} date 日期参数,默认当前日期
924
+ * @returns {string} 返回日期字符串
925
+ */
926
+ declare function getLastDateOfYear(date?: Date): string;
927
+ /**
928
+ * 获取当前日期所在年的所有日期
929
+ * @param {Date} date 日期参数,默认当前日期
930
+ * @returns {string} 返回日期字符串
931
+ */
932
+ declare function getFullDateOfYear(date?: Date): string[];
933
+ /**
934
+ * 计算两个日期相差的天数,不满一天为0
935
+ * @param {Date} startDate 开始日期
936
+ * @param {Date} endDate 结束日期
937
+ * @returns {number} 返回两个日期相差的天数,结果为正数或者负数
938
+ */
939
+ declare function getDiffDay(startDate: Date, endDate: Date): number;
940
+ /**
941
+ * 计算两个日期相差的周数,不满一周为0
942
+ * @param {Date} startDate 开始日期
943
+ * @param {Date} endDate 结束日期
944
+ * @returns {number} 返回两个日期相差的周数,结果为正数或者负数
945
+ */
946
+ declare function getDiffWeek(startDate: Date, endDate: Date): number;
947
+ /**
948
+ * 计算两个日期相差的月数,不满一月为0
949
+ * @param {Date} startDate 开始日期
950
+ * @param {Date} endDate 结束日期
951
+ * @returns {number} 返回两个日期相差的月数,结果为正数或者负数
952
+ */
953
+ declare function getDiffMonth(startDate: Date, endDate: Date): number;
954
+ /**
955
+ * 计算两个日期相差的年数,不满一年为0
956
+ * @param {Date} startDate 开始日期
957
+ * @param {Date} endDate 结束日期
958
+ * @returns {number} 返回两个日期相差的年数,结果为正数或者负数
959
+ */
960
+ declare function getDiffYear(startDate: Date, endDate: Date): number;
961
+ /**
962
+ * 获得两个日期之间的年月日数组
963
+ * @param {Date} startDate 开始日期
964
+ * @param {Date} endDate 结束日期
965
+ * @returns {Array} 返回年月日数组
966
+ */
967
+ declare function getBetweenDates(startDate: Date, endDate: Date): string[];
968
+ /**
969
+ * 获得两个日期之间的年月数组
970
+ * @description 支持:日期字符串,日期对象,时间戳,Unix时间戳
971
+ * @param {Date} startDate 开始日期
972
+ * @param {Date} endDate 结束日期
973
+ * @returns {Array} 返回年月数组
974
+ */
975
+ declare function getBetweenMonths(startDate: Date, endDate: Date): string[];
976
+ /**
977
+ * 获得两个日期之间的年数组
978
+ * @param {Date} startDate 开始日期
979
+ * @param {Date} endDate 结束日期
980
+ * @returns {Array} 返回年数组
981
+ */
982
+ declare function getBetweenYears(startDate: Date, endDate: Date): number[];
983
+ /**
984
+ * 获得过去时间的字符串显示
985
+ * @description 例如:刚刚,1分钟前,1小时前等
986
+ * @param {Date} date 日期参数
987
+ * @param options 配置项
988
+ * @returns {string} 返回字符串
989
+ */
990
+ declare function getPastTime(date: Date, options?: DateOptions): string;
991
+ /**
992
+ * 获得剩余时间的字符串显示
993
+ * @description 例如:1天10小时20分钟30秒
994
+ * @param {Date} date 日期参数
995
+ * @param options 配置项
996
+ * @returns {string} 返回字符串
997
+ */
998
+ declare function getOverTime(date: Date, options?: DateOptions): string;
999
+ /**
1000
+ * 通过日期获得年龄
1001
+ * @param {Date} date 日期参数
1002
+ * @returns {number} 返回周岁年龄
1003
+ */
1004
+ declare function getAge(date: Date): number;
1005
+ /**
1006
+ * 通过日期获得星座
1007
+ * @param {Date} date 日期参数
1008
+ * @param options 配置项
1009
+ * @returns {string} 返回星座
1010
+ */
1011
+ declare function getZodiac(date: Date, options?: DateOptions): string;
1012
+ /**
1013
+ * 通过日期获得生肖
1014
+ * @param {Date} date 日期参数
1015
+ * @param options 配置项
1016
+ * @returns {string} 返回生肖
1017
+ */
1018
+ declare function getChineseZodiac(date: Date, options?: DateOptions): string;
1019
+ /**
1020
+ * 日期加减年
1021
+ * @param {Date} date 日期参数,默认当前日期
1022
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1023
+ * @returns {Date} 返回加减后的日期
1024
+ */
1025
+ declare function addYear(date?: Date, num?: number): Date;
1026
+ /**
1027
+ * 日期加减月
1028
+ * @param {Date} date 日期参数,默认当前日期
1029
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1030
+ * @returns {Date} 返回加减后的日期
1031
+ */
1032
+ declare function addMonth(date?: Date, num?: number): Date;
1033
+ /**
1034
+ * 日期加减天
1035
+ * @param {Date} date 日期参数,默认当前日期
1036
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1037
+ * @returns {Date} 返回加减后的日期
1038
+ */
1039
+ declare function addDate(date?: Date, num?: number): Date;
1040
+ /**
1041
+ * 日期加减小时
1042
+ * @param {Date} date 日期参数,默认当前日期
1043
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1044
+ * @returns {Date} 返回加减后的日期
1045
+ */
1046
+ declare function addHours(date?: Date, num?: number): Date;
1047
+ /**
1048
+ * 日期加减分钟
1049
+ * @param {Date} date 日期参数,默认当前日期
1050
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1051
+ * @returns {Date} 返回加减后的日期
1052
+ */
1053
+ declare function addMinutes(date?: Date, num?: number): Date;
1054
+ /**
1055
+ * 日期加减秒
1056
+ * @param {Date} date 日期参数,默认当前日期
1057
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1058
+ * @returns {Date} 返回加减后的日期
1059
+ */
1060
+ declare function addSeconds(date?: Date, num?: number): Date;
1061
+ /**
1062
+ * 日期加减毫秒
1063
+ * @param {Date} date 日期参数,默认当前日期
1064
+ * @param {number} num 加减数量,用正数和负数表示;默认+100
1065
+ * @returns {Date} 返回加减后的日期
1066
+ */
1067
+ declare function addMillisecond(date?: Date, num?: number): Date;
1068
+ /**
1069
+ * 日期加减周
1070
+ * @param {Date} date 日期参数,默认当前日期
1071
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1072
+ * @returns {Date} 返回加减后的日期
1073
+ */
1074
+ declare function addWeek(date?: Date, num?: number): Date;
1075
+ /**
1076
+ * 日期加减季度
1077
+ * @param {Date} date 日期参数,默认当前日期
1078
+ * @param {number} num 加减数量,用正数和负数表示;默认+1
1079
+ * @returns {Date} 返回加减后的日期
1080
+ */
1081
+ declare function addQuarter(date?: Date, num?: number): Date;
1082
+ /**
1083
+ * 日期对象转为日期字符串
1084
+ * @description 支持日期字符串,日期对象,时间戳,unix时间戳
1085
+ * @param {Date} date 日期参数
1086
+ * @param options 配置项
1087
+ * @returns {string} 返回日期字符串
1088
+ */
1089
+ declare function toDateString(date: Date, options?: DateOptions): string;
1090
+ /**
1091
+ * 本地时区日期转UTC日期
1092
+ * @param {Date} date 本地日期,默认当前日期
1093
+ * @returns {Date} UTC日期对象
1094
+ */
1095
+ declare function toDateUTC(date?: Date): Date;
1096
+ /**
1097
+ * 日期字符串转为日期对象
1098
+ * @description 支持日期字符串,时间戳,Unix时间戳
1099
+ * @param {string|number} value 日期参数
1100
+ * @returns {Date} 返回日期对象
1101
+ */
1102
+ declare function toDate(value: string | number): Date | undefined;
1103
+
1104
+ /**
1105
+ * 两个数字相加
1106
+ * @param {string|number} arg1 第一个数字
1107
+ * @param {string|number} arg2 第二个数字
1108
+ * @returns {number} 返回计算后的数字
1109
+ */
1110
+ declare function add(arg1: string | number, arg2: string | number): number;
1111
+ /**
1112
+ * 两个数字相减
1113
+ * @param {string|number} arg1 第一个数字
1114
+ * @param {string|number} arg2 第二个数字
1115
+ * @returns {number} 返回计算后的数字
1116
+ */
1117
+ declare function subtract(arg1: string | number, arg2: string | number): string;
1118
+ /**
1119
+ * 两个数字相乘
1120
+ * @param {string|number} arg1 第一个数字
1121
+ * @param {string|number} arg2 第二个数字
1122
+ * @returns 返回计算后的数字
1123
+ */
1124
+ declare function multiply(arg1: string | number, arg2: string | number): number;
1125
+ /**
1126
+ * 两个数字相除
1127
+ * @param {string|number} arg1 第一个数字
1128
+ * @param {string|number} arg2 第二个数字
1129
+ * @returns {number} 返回计算后的数字
1130
+ */
1131
+ declare function divide(arg1: string | number, arg2: string | number): number;
1132
+ /**
1133
+ * 两个数字取模
1134
+ * @param {string|number} arg1 第一个数字
1135
+ * @param {string|number} arg2 第二个数字
1136
+ * @returns {number} 返回计算后的数字
1137
+ */
1138
+ declare function modulo(arg1: string | number, arg2: string | number): number;
1139
+ /**
1140
+ * 最大公约数
1141
+ * @param {string|number} arg1 第一个数字
1142
+ * @param {string|number} arg2 第二个数字
1143
+ * @returns {number} 返回计算后的数字
1144
+ */
1145
+ declare function gcd(arg1: string | number, arg2: string | number): number;
1146
+ /**
1147
+ * 最小公倍数
1148
+ * @param {string|number} arg1 第一个数字
1149
+ * @param {string|number} arg2 第二个数字
1150
+ * @returns {number} 返回计算后的数字
1151
+ */
1152
+ declare function scm(arg1: string | number, arg2: string | number): number;
1153
+ /**
1154
+ * 强制保留小数位数
1155
+ * @description 默认保留两位小数,解决原生的toFixed()会五舍六入的问题
1156
+ * @param {string|number} num 数字
1157
+ * @param {number} decimals 保留小数的位数,默认2位
1158
+ * @param {number} mode 保留小数模式
1159
+ * @returns {string} 返回保留后的数字字符串
1160
+ */
1161
+ declare function toFixed(num: string | number, decimals?: number, mode?: number): string | undefined;
1162
+ /**
1163
+ * 尽可能保留小数位数
1164
+ * @param {string|number} num 数字
1165
+ * @param {number} decimals 保留小数的位数,默认2位
1166
+ * @param {number} mode 保留小数模式
1167
+ * @returns {number} 返回保留后的数字
1168
+ */
1169
+ declare function toDecimal(num: string | number, decimals?: number, mode?: number): number | "--" | undefined;
1170
+
1171
+ /**
1172
+ * 正则校验的方法
1173
+ * @description 类型为REGEXP对应的正则
1174
+ * @param {string} value 校验的参数
1175
+ * @param {RegExp} regex 使用的REGEXP中的正则
1176
+ * @returns {boolean} 返回校验的结果
1177
+ */
1178
+ declare function regexpTest(value: string, regex: RegExp): boolean;
1179
+ /**
1180
+ * 是中文
1181
+ * @param {string} value 校验的参数
1182
+ * @returns {boolean} 返回校验的结果
1183
+ */
1184
+ declare function isChinese(value: string): boolean;
1185
+ /**
1186
+ * 是英文
1187
+ * @param {string} value 校验的参数
1188
+ * @returns {boolean} 返回校验的结果
1189
+ */
1190
+ declare function isEnglish(value: string): boolean;
1191
+ /**
1192
+ * 是外链
1193
+ * @description 支持http,https,mail,tel电话
1194
+ * @param {string} value 校验的参数
1195
+ * @returns {boolean} 返回校验的结果
1196
+ */
1197
+ declare function isExternal(value: string): boolean;
1198
+ /**
1199
+ * 是小写字母
1200
+ * @param {string} value 校验的参数
1201
+ * @returns {boolean} 返回校验的结果
1202
+ */
1203
+ declare function isLowerCase(value: string): boolean;
1204
+ /**
1205
+ * 是大写字母
1206
+ * @param {string} value 校验的参数
1207
+ * @returns {boolean} 返回校验的结果
1208
+ */
1209
+ declare function isUpperCase(value: string): boolean;
1210
+ /**
1211
+ * 是11位手机号码
1212
+ * @param {string} value 校验的参数
1213
+ * @returns {boolean} 返回校验的结果
1214
+ */
1215
+ declare function isMobile(value: string): boolean;
1216
+ /**
1217
+ * 是邮箱
1218
+ * @param {string} value 校验的参数
1219
+ * @returns {boolean} 返回校验的结果
1220
+ */
1221
+ declare function isEmail(value: string): boolean;
1222
+ /**
1223
+ * 是身份证号码(15-18位)
1224
+ * @param {string} value 校验的参数
1225
+ * @returns {boolean} 返回校验的结果
1226
+ */
1227
+ declare function isIdCard(value: string): boolean;
1228
+ /**
1229
+ * 是url链接
1230
+ * @param {string} value 校验的参数
1231
+ * @returns {boolean} 返回校验的结果
1232
+ */
1233
+ declare function isUrl(value: string): boolean;
1234
+
1235
+ /**
1236
+ * @module 随机数
1237
+ */
1238
+ /**
1239
+ * 生成指定大小的随机整数
1240
+ * @description n和m参数表示最小和最大范围值,默认0-9之间范围
1241
+ * @param {number} min 随机数的最小值,默认 0
1242
+ * @param {number} max 随机数的最大值,默认 9
1243
+ * @returns {number} 返回指定大小的随机整数
1244
+ */
1245
+ declare function getRandom(min?: number, max?: number): number;
1246
+ /**
1247
+ * 生成固定位数的随机整数
1248
+ * @description 默认是1,代表生成0-9之间一位,如果是2,则生成10-99之间两位,以此类推
1249
+ * @param {number} len 固定的位数
1250
+ * @returns {number} 返回固定位数的随机数
1251
+ */
1252
+ declare function getRandomDigit(len?: number): number;
1253
+
1254
+ /**
1255
+ * 格式化文件大小自动转为 B,KB,MB,GB
1256
+ * @param {number} size 文件的大小,单位byte字节
1257
+ * @returns {string} 返回格式化后的字符串
1258
+ */
1259
+ declare function formatFileSize(size: number): string;
1260
+ /**
1261
+ * 获得文件名称
1262
+ * @param {string} fileName 文件的全名称,例如:测试图片.jpg
1263
+ * @returns {string} 返回文件的名称
1264
+ */
1265
+ declare function getFileName(fileName: string): string | undefined;
1266
+ /**
1267
+ * 获得文件后缀名
1268
+ * @param {string} value 文件地址路径或者文件全名称,例如:http://xxx.com/mytest.jpg,测试图片.jpg
1269
+ * @returns {string} 返回文件后缀名
1270
+ */
1271
+ declare function getFileSuffix(value: string): string | undefined;
1272
+ /**
1273
+ * file转blob
1274
+ * @param {File} file file文件
1275
+ * @returns {Promise} 返回Promise的blob
1276
+ */
1277
+ declare function fileToBlob(file: File): Promise<Blob>;
1278
+ /**
1279
+ * file转base64
1280
+ * @param {File} file file文件
1281
+ * @returns {Promise} 返回Promise的base64
1282
+ */
1283
+ declare function fileToBase64(file: File): Promise<string>;
1284
+ /**
1285
+ * file转url
1286
+ * @description 适用于本地上传图片并预览,需要注意 URL.revokeObjectURL(file) 内存释放
1287
+ * @param {File} file file文件
1288
+ * @returns {Promise} 返回Promise的url
1289
+ */
1290
+ declare function fileToUrl(file: File): Promise<string>;
1291
+ /**
1292
+ * url赚file
1293
+ * @param {string} url url地址
1294
+ * @returns {Promise} 返回Promise的file
1295
+ */
1296
+ declare function urlToFile(url: string): Promise<File>;
1297
+ /**
1298
+ * blob转file
1299
+ * @param {Blob} blob blob数据
1300
+ * @param {string} fileName 文件名称,默认以时间戳命名
1301
+ * @returns {Promise} 返回Promise的file
1302
+ */
1303
+ declare function blobToFile(blob: Blob, fileName?: string): Promise<File>;
1304
+ /**
1305
+ * blob转文本
1306
+ * @param {Blob} blob blob数据
1307
+ * @returns {Promise} 返回Promise的文本
1308
+ */
1309
+ declare function blobToText(blob: Blob): Promise<string>;
1310
+ /**
1311
+ * blob转base64
1312
+ * @param {Blob} blob blob数据
1313
+ * @returns {Promise} 返回Promise的base64
1314
+ */
1315
+ declare function blobToBase64(blob: Blob): Promise<string>;
1316
+ /**
1317
+ * base64转file
1318
+ * @param {string} base64 base64数据
1319
+ * @param {string} fileName 文件名称,默认以时间戳命名
1320
+ * @returns {Promise} 返回Promise的file
1321
+ */
1322
+ declare function base64ToFile(base64: string, fileName?: string): Promise<File>;
1323
+ /**
1324
+ * base64转成blob
1325
+ * @param {string} base64 base64数据
1326
+ * @returns {Promise} 返回Promise的blob
1327
+ */
1328
+ declare function base64ToBlob(base64: string): Promise<Blob>;
1329
+ /**
1330
+ * 图片url转base64
1331
+ * @param {string} imgUrl 图片url地址
1332
+ * @returns {Promise} 返回Promise的base64
1333
+ */
1334
+ declare function urlToBase64(imgUrl: string): Promise<string>;
1335
+ /**
1336
+ * 下载blob格式的文件
1337
+ * @param {Blob} blob blob数据
1338
+ * @param {string} fileName 下载的文件名,不写后缀名则默认为原文件类型
1339
+ */
1340
+ declare function downloadBlobFile(blob: Blob, fileName: string): void;
1341
+ /**
1342
+ * 通过文件url地址下载
1343
+ * @param {string} fileUrl url文件地址
1344
+ * @param {string} fileName 下载的文件名,不写后缀名则默认为原文件类型
1345
+ */
1346
+ declare function downloadFileUrl(fileUrl: string, fileName: string): void;
1347
+
1348
+ /**
1349
+ * @module 颜色
1350
+ */
1351
+ /**
1352
+ * rgb颜色转hex
1353
+ * @param {string} rgb rgb颜色字符串
1354
+ * @returns {string} 返回生成的hex颜色
1355
+ */
1356
+ declare function rgbToHex(rgb: string): string;
1357
+ /**
1358
+ * rgba颜色转hex
1359
+ * @param {string} rgba rgba颜色字符串
1360
+ * @returns {string} 返回生成的hex颜色
1361
+ */
1362
+ declare function rgbaToHex(rgba: string): string;
1363
+ /**
1364
+ * rgba颜色转hsl
1365
+ * @param {string} rgba rgb颜色字符串
1366
+ * @returns {string} 返回生成的hsl颜色
1367
+ */
1368
+ declare function rgbaToHsl(rgba: string): string;
1369
+ /**
1370
+ * hex颜色转rgb
1371
+ * @param {string} hex hex颜色字符串
1372
+ * @returns {string} 返回生成的rgb颜色
1373
+ */
1374
+ declare function hexToRgb(hex: string): string;
1375
+ /**
1376
+ * hex颜色转rgba
1377
+ * @param {string} hex hex颜色字符串
1378
+ * @param {number} opacity 透明度
1379
+ * @returns {string} 返回生成的rgba颜色
1380
+ */
1381
+ declare function hexToRgba(hex: string, opacity?: number): string;
1382
+ /**
1383
+ * hex颜色转hsl
1384
+ * @param {string} hex hex颜色字符串
1385
+ * @returns {string} 返回生成的hsl颜色
1386
+ */
1387
+ declare function hexToHsl(hex: string): string;
1388
+ /**
1389
+ * 随机生成hex颜色
1390
+ * @returns {string} 返回生成的十六进制颜色
1391
+ */
1392
+ declare function getDrawHex(): string;
1393
+ /**
1394
+ * 随机生成rgb颜色
1395
+ * @returns {string} 返回生成的 rgb 颜色
1396
+ */
1397
+ declare function getDrawRgb(): string;
1398
+ /**
1399
+ * 随机生成rgba颜色
1400
+ * @returns {string} 返回生成的 rgba 颜色
1401
+ */
1402
+ declare function getDrawRgba(): string;
1403
+
1404
+ /**
1405
+ * @module 校验
1406
+ */
1407
+ /**
1408
+ * 判断是整数
1409
+ * @param {*} value 参数
1410
+ * @returns {boolean} result 返回结果
1411
+ */
1412
+ declare function isInteger(value: any): boolean;
1413
+ /**
1414
+ * 判断是小数
1415
+ * @param {*} value 参数
1416
+ * @returns {boolean} result 返回结果
1417
+ */
1418
+ declare function isDecimal(value: any): boolean;
1419
+ /**
1420
+ * 判断类型是数字 Number
1421
+ * @param {*} value 参数
1422
+ * @returns {boolean} 返回结果
1423
+ */
1424
+ declare function isNumber(value: any): boolean;
1425
+ /**
1426
+ * 判断类型是字符串 String
1427
+ * @param {*} value 参数
1428
+ * @returns {boolean} 返回结果
1429
+ */
1430
+ declare function isString(value: any): boolean;
1431
+ /**
1432
+ * 判断类型是数组 Array
1433
+ * @param {*} value 参数
1434
+ * @returns {boolean} 返回结果
1435
+ */
1436
+ declare function isArray(value: any): boolean;
1437
+ /**
1438
+ * 判断类型是对象 Object
1439
+ * @param {*} value 参数
1440
+ * @returns {boolean} 返回结果
1441
+ */
1442
+ declare function isObject(value: any): boolean;
1443
+ /**
1444
+ * 判断类型是布尔 boolean
1445
+ * @param {*} value 参数
1446
+ * @returns {boolean} 返回结果
1447
+ */
1448
+ declare function isBoolean(value: any): boolean;
1449
+ /**
1450
+ * 判断类型是日期 Date
1451
+ * @param {*} value 参数
1452
+ * @returns {boolean} 返回结果
1453
+ */
1454
+ declare function isDate(value: any): boolean;
1455
+ /**
1456
+ * 判断类型是函数 Function
1457
+ * @param {*} value 参数
1458
+ * @returns {boolean} 返回结果
1459
+ */
1460
+ declare function isFunction(value: any): boolean;
1461
+ /**
1462
+ * 判断类型是函数字符串 FunctionString
1463
+ * @description 支持普通函数,异步函数,箭头函数
1464
+ * @param {*} value 参数
1465
+ * @returns {boolean} 返回结果
1466
+ */
1467
+ declare function isFunctionString(value: any): boolean;
1468
+ /**
1469
+ * 判断类型是异步函数 AsyncFunction
1470
+ * @param {*} value 参数
1471
+ * @returns {boolean} 返回结果
1472
+ */
1473
+ declare function isAsyncFunction(value: any): boolean;
1474
+ /**
1475
+ * 判断类型是 Symbol
1476
+ * @param {*} value 参数
1477
+ * @returns {boolean} 返回结果
1478
+ */
1479
+ declare function isSymbol(value: any): boolean;
1480
+ /**
1481
+ * 判断类型是正则 RegExp
1482
+ * @param {*} value 参数
1483
+ * @returns {boolean} 返回结果
1484
+ */
1485
+ declare function isRegExp(value: any): boolean;
1486
+ /**
1487
+ * 判断类型是错误 Error
1488
+ * @param {*} value 参数
1489
+ * @returns {boolean} 返回结果
1490
+ */
1491
+ declare function isError(value: any): boolean;
1492
+ /**
1493
+ * 判断类型是 Promise
1494
+ * @param {*} value 参数
1495
+ * @returns {boolean} 返回结果
1496
+ */
1497
+ declare function isPromise(value: any): boolean;
1498
+ /**
1499
+ *判断类型是 Map
1500
+ * @param {*} value 参数
1501
+ * @returns {boolean} 返回结果
1502
+ */
1503
+ declare function isMap(value: any): boolean;
1504
+ /**
1505
+ * 判断类型是 WeakMap
1506
+ * @param {*} value 参数
1507
+ * @returns {boolean} 返回结果
1508
+ */
1509
+ declare function isWeakMap(value: any): boolean;
1510
+ /**
1511
+ * 判断类型是 Set
1512
+ * @param {*} value 参数
1513
+ * @returns {boolean} 返回结果
1514
+ */
1515
+ declare function isSet(value: any): boolean;
1516
+ /**
1517
+ * 判断类型是 WeakSet
1518
+ * @param {*} value 参数
1519
+ * @returns {boolean} 返回结果
1520
+ */
1521
+ declare function isWeakSet(value: any): boolean;
1522
+ /**
1523
+ * 判断类型是 BigInt
1524
+ * @param {*} value 参数
1525
+ * @returns {boolean} 返回结果
1526
+ */
1527
+ declare function isBigInt(value: any): boolean;
1528
+ /**
1529
+ * 判断类型是 Json
1530
+ * @param {*} value 参数
1531
+ * @returns {boolean} 返回结果
1532
+ */
1533
+ declare function isJson(value: any): boolean;
1534
+ /**
1535
+ * 判断值为真
1536
+ * @param {*} value 校验的参数
1537
+ * @returns {boolean} 返回结果
1538
+ */
1539
+ declare function isTrue(value: any): boolean;
1540
+ /**
1541
+ * 判断值为假
1542
+ * @param {*} value 校验的参数
1543
+ * @returns {boolean} 返回结果
1544
+ */
1545
+ declare function isFalse(value: any): boolean;
1546
+ /**
1547
+ * 判断非数字
1548
+ * @param {*} value 参数
1549
+ * @returns {boolean} 返回结果
1550
+ */
1551
+ declare function isNaN(value: any): boolean;
1552
+ /**
1553
+ * 判断是数字
1554
+ * @description 等同于isNumber()
1555
+ * @param {*} value 参数
1556
+ * @returns {boolean} 返回结果
1557
+ */
1558
+ declare function isNotNaN(value: any): boolean;
1559
+ /**
1560
+ * 判断对象为空
1561
+ * @description 判断值是否为空,如果对象初始化了值则不为空
1562
+ * @param {*} value 校验的参数
1563
+ * @returns {boolean} 返回结果
1564
+ */
1565
+ declare function isNull(value: any): boolean;
1566
+ /**
1567
+ * 判断对象不为空
1568
+ * @description 判断值是否为空,如果对象初始化了值则不为空
1569
+ * @param {*} value 校验的参数
1570
+ * @returns {boolean} 返回结果
1571
+ */
1572
+ declare function isNotNull(value: any): boolean;
1573
+ /**
1574
+ * 判断值为空
1575
+ * @description 判断是否是有意义不为空的值,如果值是{},[]空的数据则为空
1576
+ * @param {*} value 校验的参数
1577
+ * @returns {boolean} 返回结果
1578
+ */
1579
+ declare function isEmpty(value: any): boolean;
1580
+ /**
1581
+ * 判断值不为空
1582
+ * @description 判断是否是有意义不为空的值,如果值是{},[]空的数据则为空
1583
+ * @param {*} value 校验的参数
1584
+ * @returns {boolean} 返回结果
1585
+ */
1586
+ declare function isNotEmpty(value: any): boolean;
1587
+ /**
1588
+ * 判断值是空白的
1589
+ * @description 同时会校验空值,空对象,以及空白符号
1590
+ * @param {*} value 校验的参数
1591
+ * @returns {boolean} 返回结果
1592
+ */
1593
+ declare function isBlank(value: any): boolean;
1594
+ /**
1595
+ * 判断值不是空白的
1596
+ * @description 同时会校验空值,空对象,以及空白符号
1597
+ * @param {*} value 校验的参数
1598
+ * @returns {boolean} 返回结果
1599
+ */
1600
+ declare function isNotBlank(value: any): boolean;
1601
+ /**
1602
+ * 判断值是undefined
1603
+ * @param {*} value 校验的参数
1604
+ * @returns {boolean} 返回结果
1605
+ */
1606
+ declare function isUndefined(value: any): boolean;
1607
+ /**
1608
+ * 判断值不是undefined
1609
+ * @param {*} value 校验的参数
1610
+ * @returns {boolean} 返回结果
1611
+ */
1612
+ declare function isNotUndefined(value: any): boolean;
1613
+ /**
1614
+ * 判断两个值是否相等
1615
+ * @param {*} value1 参数1
1616
+ * @param {*} value2 参数2
1617
+ * @returns {boolean} 返回结果
1618
+ */
1619
+ declare function equals(value1: any, value2: any): boolean;
1620
+ /**
1621
+ * 判断两个值是否相等(忽略大小写)
1622
+ * @param {*} value1 参数1
1623
+ * @param {*} value2 参数2
1624
+ * @returns {boolean} 返回结果
1625
+ */
1626
+ declare function equalsIgnoreCase(value1: any, value2: any): boolean;
1627
+ /**
1628
+ * 深度对比数据
1629
+ * @description 可以对比任意数据,对象、数组、日期等也可深度对比,对象不区分先后顺序
1630
+ * @param {*} x 数据1
1631
+ * @param {*} args 数据2
1632
+ * @returns {boolean} 返回对比结果
1633
+ */
1634
+ declare function deepCompare(x: any, ...args: any[]): boolean;
1635
+
1636
+ /**
1637
+ * 根据keycode获得键名
1638
+ * @param {number} keycode 键值
1639
+ * @returns {string} 返回键名
1640
+ */
1641
+ declare function getKeyName(keycode: number): string;
1642
+ /**
1643
+ * 根据keyname获得键值
1644
+ * @param {string} keyname
1645
+ * @returns {number} 返回键值
1646
+ */
1647
+ declare function getKeyCode(keyname: string): string | undefined;
1648
+
1649
+ /**
1650
+ * @module 生成Id
1651
+ */
1
1652
  /**
2
1653
  * 生成UUID
3
1654
  * @param {Number} len 生成的长度,默认32位
@@ -15,6 +1666,747 @@ declare function getUUID(len?: number, radix?: number): string;
15
1666
  */
16
1667
  declare function getGUID(): string;
17
1668
 
18
- declare function testLoadUtils(): void;
1669
+ /**
1670
+ * Base64编码
1671
+ * @param str 待编码的UTF8字符串
1672
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
1673
+ * @returns Base64字符串
1674
+ */
1675
+ declare function base64Encode(str: string, urlSafe?: boolean): string;
1676
+ /**
1677
+ * Base64解码
1678
+ * @param str 待解码的Base64字符串
1679
+ * @returns 解码后的UTF8字符串
1680
+ */
1681
+ declare function base64Decode(str: string): string;
1682
+ /**
1683
+ * URL安全Base64编码
1684
+ * @param str 待编码的UTF8字符串
1685
+ * @returns URL安全的Base64字符串
1686
+ */
1687
+ declare function base64EncodeURI(str: string): string;
1688
+ /**
1689
+ * URL安全Base64解码
1690
+ * @param str 待解码的URL安全Base64字符串
1691
+ * @returns 解码后的UTF8字符串
1692
+ */
1693
+ declare function base64DecodeURI(str: string): string;
1694
+ /**
1695
+ * Uint8Array转Base64字符串
1696
+ * @param uint8Array 待编码的字节数组
1697
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
1698
+ * @returns Base64字符串
1699
+ */
1700
+ declare function base64FromUint8Array(uint8Array: Uint8Array, urlSafe?: boolean): string;
1701
+ /**
1702
+ * Base64字符串转Uint8Array
1703
+ * @param base64Str 待解码的Base64字符串
1704
+ * @param urlSafe 是否为URL安全的Base64(默认false)
1705
+ * @returns 解码后的字节数组
1706
+ */
1707
+ declare function base64ToUint8Array(base64Str: string, urlSafe?: boolean): Uint8Array;
1708
+ /**
1709
+ * 十六进制字符串转Base64字符串
1710
+ * @param hexStr 待编码的十六进制字符串
1711
+ * @param urlSafe 是否生成URL安全的Base64(默认false)
1712
+ * @returns Base64字符串
1713
+ */
1714
+ declare function base64FromHex(hexStr: string, urlSafe?: boolean): string;
1715
+ /**
1716
+ * Base64字符串转十六进制字符串
1717
+ * @param base64Str 待解码的Base64字符串
1718
+ * @param urlSafe 是否为URL安全的Base64(默认false)
1719
+ * @returns 解码后的十六进制字符串
1720
+ */
1721
+ declare function base64ToHex(base64Str: string, urlSafe?: boolean): string;
1722
+
1723
+ /**
1724
+ * md5 加密
1725
+ * @param {string} str 字符串
1726
+ * @returns {string} 返回加密后的十六进制字符串
1727
+ */
1728
+ declare function md5(str: string): string;
1729
+ /**
1730
+ * md5 加密
1731
+ * @param {string} str 字符串
1732
+ * @returns {*} 返回加密后的二进制原始值
1733
+ */
1734
+ declare function md5Raw(str: string): any;
1735
+ /**
1736
+ * md5_hmac 加密
1737
+ * @param {string} str 字符串
1738
+ * @param {string} key 秘钥
1739
+ * @returns {string} 返回加密后的十六进制字符串
1740
+ */
1741
+ declare function md5Hmac(str: string, key: string): string;
1742
+ /**
1743
+ * md5_hmac 加密
1744
+ * @param {string} str 字符串
1745
+ * @param {string} key 秘钥
1746
+ * @returns {string} 返回加密后的二进制原始值
1747
+ */
1748
+ declare function md5HmacRaw(str: string, key: string): any;
1749
+
1750
+ /**
1751
+ * sha256 加密
1752
+ * @param {string} str 字符串
1753
+ * @returns {string} 返回加密后的字符串
1754
+ */
1755
+ declare function sha256(str: string): string;
1756
+ /**
1757
+ * sha256_raw 加密
1758
+ * @param {string} str 字符串
1759
+ * @returns {string} 返回加密后的原始值
1760
+ */
1761
+ declare function sha256Raw(str: string): any;
1762
+ /**
1763
+ * sha256_hmac 加密
1764
+ * @param {string} str 字符串
1765
+ * @param {string} key 秘钥
1766
+ * @returns {string} 返回加密后的字符串
1767
+ */
1768
+ declare function sha256Hmac(str: string, key: string): string;
1769
+ /**
1770
+ * sha256_hmac_raw 加密
1771
+ * @param {string} str 字符串
1772
+ * @param {string} key 秘钥
1773
+ * @returns {string} 返回加密后的原始值
1774
+ */
1775
+ declare function sha256HmacRaw(str: string, key: string): any;
1776
+ /**
1777
+ * sha224 加密
1778
+ * @param {string} str 字符串
1779
+ * @returns {string} 返回加密后的字符串
1780
+ */
1781
+ declare function sha224(str: string): string;
1782
+ /**
1783
+ * sha224_raw 加密
1784
+ * @param {string} str 字符串
1785
+ * @returns {string} 返回加密后的原始值
1786
+ */
1787
+ declare function sha224Raw(str: string): any;
1788
+ /**
1789
+ * sha224_hmac 加密
1790
+ * @param {string} str 字符串
1791
+ * @param {string} key 秘钥
1792
+ * @returns {string} 返回加密后的字符串
1793
+ */
1794
+ declare function sha224Hmac(str: string, key: string): string;
1795
+ /**
1796
+ * sha224_hmac_raw 加密
1797
+ * @param {string} str 字符串
1798
+ * @param {string} key 秘钥
1799
+ * @returns {string} 返回加密后的原始值
1800
+ */
1801
+ declare function sha224HmacRaw(str: string, key: string): any;
1802
+
1803
+ /**
1804
+ * sm3 加密
1805
+ * @param {string} str 字符串
1806
+ * @returns {string} 返回加密后的字符串
1807
+ */
1808
+ declare function sm3Encrypt(str: string): string;
1809
+ /**
1810
+ * sm3_hmac 加密
1811
+ * @param {string} str 字符串
1812
+ * @param {string} key 配置
1813
+ * @returns {string} 返回加密后的字符串
1814
+ */
1815
+ declare function sm3EncryptHmac(str: string, key: string): string;
1816
+
1817
+ declare namespace MODE {
1818
+ export { SM4_MODE_ECB as ECB };
1819
+ export { SM4_MODE_CBC as CBC };
1820
+ }
1821
+ declare namespace OUTPUT {
1822
+ export { SM4_OUTPUT_HEX as HEX };
1823
+ export { SM4_OUTPUT_UTF8 as UTF8 };
1824
+ export { SM4_OUTPUT_ARRAY as ARRAY };
1825
+ export { SM4_OUTPUT_UINT8ARRAY as UINT8ARRAY };
1826
+ export { SM4_OUTPUT_ARRAYBUFFER as ARRAYBUFFER };
1827
+ }
1828
+ declare const SM4_MODE_ECB: "ecb";
1829
+ declare const SM4_MODE_CBC: "cbc";
1830
+ declare const SM4_OUTPUT_HEX: "hex";
1831
+ declare const SM4_OUTPUT_UTF8: "utf8";
1832
+ declare const SM4_OUTPUT_ARRAY: "array";
1833
+ declare const SM4_OUTPUT_UINT8ARRAY: "uint8array";
1834
+ declare const SM4_OUTPUT_ARRAYBUFFER: "arraybuffer";
1835
+
1836
+ /**
1837
+ * sm4传参和返回的类型,不管是传参还是返回值固定是这几个
1838
+ */
1839
+ type SM4DataType = string | Uint8Array | ArrayBuffer | number[];
1840
+ /**
1841
+ * sm4通用配置
1842
+ */
1843
+ interface SM4Options {
1844
+ mode?: keyof typeof MODE;
1845
+ iv?: SM4DataType;
1846
+ padding?: "pkcs#7";
1847
+ output?: keyof typeof OUTPUT;
1848
+ }
1849
+ /**
1850
+ * sm4 加密
1851
+ * @param {string} str 字符串
1852
+ * @param {string} key 秘钥
1853
+ * @param {Object} options 配置
1854
+ * @returns {string} 加密后的字符串
1855
+ */
1856
+ declare function sm4Encrypt(str: string, key: SM4DataType, options?: SM4Options): SM4DataType;
1857
+ /**
1858
+ * sm4 解密
1859
+ * @param {string} str 字符串
1860
+ * @param {string} key 秘钥
1861
+ * @param {Object} options 配置
1862
+ * @returns {string} 解密后的数据
1863
+ */
1864
+ declare function sm4Decrypt(str: string, key: SM4DataType, options?: SM4Options): SM4DataType;
1865
+ /**
1866
+ * 生成sm4的key
1867
+ * @param {string} inputFormat 输入类型 可以任意字符串,其中固定的uint8array、array、hex这3个字符串,会对应生成类型数据
1868
+ * @returns {SM4DataType} 生成的key
1869
+ */
1870
+ declare const generateSM4Key: (inputFormat?: string) => SM4DataType;
1871
+ /**
1872
+ * 生成sm4的iv
1873
+ * @param {string} inputFormat 输入类型 可以任意字符串,其中固定的uint8array、array、hex这3个字符串,会对应生成类型数据
1874
+ * @returns {SM4DataType} 生成的iv
1875
+ */
1876
+ declare const generateSM4Iv: (inputFormat?: string) => SM4DataType;
1877
+ declare const SM4: {
1878
+ MODE: {
1879
+ ECB: string;
1880
+ CBC: string;
1881
+ };
1882
+ PADDING: string;
1883
+ OUTPUT: {
1884
+ HEX: string;
1885
+ UTF8: string;
1886
+ ARRAY: string;
1887
+ UINT8ARRAY: string;
1888
+ ARRAYBUFFER: string;
1889
+ };
1890
+ };
1891
+
1892
+ /**
1893
+ * @module 脱敏
1894
+ */
1895
+ /**
1896
+ * 指定位置的字符串转为星号
1897
+ * @param {string|number} value 字符串参数
1898
+ * @param {number} start 转换开始位置
1899
+ * @param {number} len 显示星号的长度
1900
+ * @returns {string} 返回转化后字符串
1901
+ */
1902
+ declare function formatStartOf(value: string, start: number, len: number): string;
1903
+ /**
1904
+ * 姓名中间转为星号
1905
+ * @param {string} value 姓名
1906
+ * @returns {string} 返回转化后字符串
1907
+ */
1908
+ declare function formatStartOfName(value: string): string;
1909
+ /**
1910
+ * 手机号码固定位数转为星号
1911
+ * @param {string} value 手机号码
1912
+ * @param {number} start 前缀长度,默认3位
1913
+ * @param {number} len 显示星号的长度,默认4位
1914
+ * @returns {string} 返回转化后字符串
1915
+ */
1916
+ declare function formatStartOfMobile(value: string, start?: number, len?: number): string;
1917
+ /**
1918
+ * 身份证号码固定位数转为星号
1919
+ * @param {string} value 身份证号码
1920
+ * @param {number} start 前缀长度,默认4位
1921
+ * @param {number} len 显示星号的长度,默认8位
1922
+ * @returns {string} 返回转化后字符串
1923
+ */
1924
+ declare function formatStartOfIDCard(value: string, start?: number, len?: number): string;
1925
+ /**
1926
+ * 银行卡号固定位数转为星号
1927
+ * @param {string} value 银行卡号
1928
+ * @param {number} start 前缀长度,默认4位
1929
+ * @param {number} len 显示星号的长度,默认10位
1930
+ * @returns {string} 返回转化后字符串
1931
+ */
1932
+ declare function formatStartOfBankCard(value: string, start?: number, len?: number): string;
1933
+
1934
+ /**
1935
+ * 根据身份证号码获取信息
1936
+ * @description 能获取到 籍贯,出生日期,年龄,性别
1937
+ * @param {string} idCard 身份证号码,支持一代15位和二代18位
1938
+ * @returns {Object} 返回身份证信息对象
1939
+ */
1940
+ declare function getInfoByIDCard(idCard: string): {
1941
+ province: string | undefined;
1942
+ birthday: string | undefined;
1943
+ age: number | undefined;
1944
+ sex: string | undefined;
1945
+ } | undefined;
1946
+ /**
1947
+ * 根据身份证号码获得生日
1948
+ * @param {string} idCard 身份证号码,支持一代15位和二代18位
1949
+ * @returns {string} 返回生日
1950
+ */
1951
+ declare function getBirthdayByIDCard(idCard: string): string | undefined;
1952
+ /**
1953
+ * 根据身份证号码获得年龄
1954
+ * @param {string} idCard 身份证号码,支持一代15位和二代18位
1955
+ * @returns {number} 返回年龄
1956
+ */
1957
+ declare function getAgeByIDCard(idCard: string): number | undefined;
1958
+ /**
1959
+ * 根据身份证号码获得性别
1960
+ * @param {string} idCard 身份证号码,支持一代15位和二代18位
1961
+ * @returns {string} 返回性别
1962
+ */
1963
+ declare function getSexByIDCard(idCard: string): string | undefined;
1964
+ /**
1965
+ * 根据身份证号码获得省份
1966
+ * @param {string} idCard 身份证号码,支持一代15位和二代18位
1967
+ * @returns {string} 返回省份
1968
+ */
1969
+ declare function getProvinceByIDCard(idCard: string): string | undefined;
1970
+
1971
+ /**
1972
+ * @module 分页
1973
+ */
1974
+ /**
1975
+ * 获得分页起始数
1976
+ * @param {Object} pagination 分页参数
1977
+ * @returns {Array} 返回起始数
1978
+ */
1979
+ declare function getLimit(pagination?: {
1980
+ page: number;
1981
+ pageSize: number;
1982
+ total: number;
1983
+ totalPage: number;
1984
+ pagerCount: number;
1985
+ }): number[];
1986
+ /**
1987
+ * 获得总条数
1988
+ * @param {Object} pagination 分页参数
1989
+ * @returns {number} 返回总条数
1990
+ */
1991
+ declare function getTotalPage(pagination?: {
1992
+ page: number;
1993
+ pageSize: number;
1994
+ total: number;
1995
+ totalPage: number;
1996
+ pagerCount: number;
1997
+ }): number;
1998
+ /**
1999
+ * 获得彩虹分页器
2000
+ * @param {Object} pagination 分页参数
2001
+ * @param {Function} callback 回调函数
2002
+ * @returns {Promise} 返回彩虹分页器数据
2003
+ */
2004
+ declare function getRainbowPager(pagination: {
2005
+ page: number;
2006
+ pageSize: number;
2007
+ total: number;
2008
+ totalPage: number;
2009
+ pagerCount: number;
2010
+ } | undefined, callback: (pager: number[]) => void): Promise<number[]>;
2011
+ /**
2012
+ * 获得上一页
2013
+ * @param {Object} pagination 分页参数
2014
+ * @param {Function} callback 回调函数
2015
+ * @returns {Promise} 返回上一页
2016
+ */
2017
+ declare function getPrevPage(pagination: {
2018
+ page: number;
2019
+ pageSize: number;
2020
+ total: number;
2021
+ totalPage: number;
2022
+ pagerCount: number;
2023
+ } | undefined, callback: (page: number) => void): Promise<number>;
2024
+ /**
2025
+ * 获得下一页
2026
+ * @description 最后一页会根据totalPage参数判断,如果不传此参数,则会根据参数中pageSize和total重新计算总页数
2027
+ * @param {Object} pagination 分页参数
2028
+ * @param {Function} callback 回调函数
2029
+ * @returns {Promise} 返回下一页
2030
+ */
2031
+ declare function getNextPage(pagination: {
2032
+ page: number;
2033
+ pageSize: number;
2034
+ total: number;
2035
+ totalPage: number;
2036
+ pagerCount: number;
2037
+ } | undefined, callback: (page: number) => void): Promise<number>;
2038
+
2039
+ /**
2040
+ * 获得协议名
2041
+ * @param {string} url url地址,默认当前url地址
2042
+ * @returns {string} 返回协议名
2043
+ */
2044
+ declare function getProtocol(url?: string): string | undefined;
2045
+ /**
2046
+ * 获得主机地址
2047
+ * @param {string} url url地址,默认当前url地址
2048
+ * @returns {string} 返回主机地址
2049
+ */
2050
+ declare function getHost(url?: string): string | undefined;
2051
+ /**
2052
+ * 获得主机名称
2053
+ * @param {string} url url地址,默认当前url地址
2054
+ * @returns {string} 返回主机名称
2055
+ */
2056
+ declare function getHostName(url?: string): string | undefined;
2057
+ /**
2058
+ * 获得端口号
2059
+ * @param {string} url url地址,默认当前url地址
2060
+ * @returns {string} 返回端口号
2061
+ */
2062
+ declare function getPort(url?: string): string | undefined;
2063
+ /**
2064
+ * 获得地址路径
2065
+ * @param {string} url url地址,默认当前url地址
2066
+ * @returns {string} 返回地址路径
2067
+ */
2068
+ declare function getUrlPath(url?: string): string | undefined;
2069
+ /**
2070
+ * 获得hash字符串
2071
+ * @param {string} url url地址,默认当前url地址
2072
+ * @returns {string} 返回hash字符串
2073
+ */
2074
+ declare function getUrlHash(url?: string): string | undefined;
2075
+ /**
2076
+ * 获得查询参数字符串
2077
+ * @param {string} url url地址,默认当前url地址
2078
+ * @returns {string} 返回查询参数字符串
2079
+ */
2080
+ declare function getSearchString(url?: string): string | undefined;
2081
+ /**
2082
+ * 查询参数字符串中是否包含某个参数
2083
+ * @param {string} url url地址,默认当前url地址
2084
+ * @param {string} name 参数名
2085
+ * @returns {boolean} 返回结果
2086
+ */
2087
+ declare function hasSearchParam(url: string | undefined, name: string): boolean;
2088
+ /**
2089
+ * 查询参数字符串中获得某个参数的值
2090
+ * @param {string} url url地址,默认当前url地址
2091
+ * @param {string} name 参数名
2092
+ * @returns {string} 返回查询到的值
2093
+ */
2094
+ declare function getSearchParam(url?: string, name?: string): string | undefined;
2095
+ /**
2096
+ * 查询参数字符串中设置某个参数的值
2097
+ * @param {string} name 参数名
2098
+ * @param {string|number|Array} value 参数值,如果是数组,则解析为:&ids[0]=1&ids[2]=2
2099
+ * @param {string} url url地址,默认当前url地址
2100
+ * @returns {string} 返回查询参数字符串
2101
+ */
2102
+ declare function setSearchParam(url: string | undefined, name: string | undefined, value: string | number | number[] | string[]): string;
2103
+ /**
2104
+ * 查询参数字符串转为对象
2105
+ * @param {string} url url地址,默认当前url地址
2106
+ * @returns {Object} 返回参数对象
2107
+ */
2108
+ declare function parseSearchParam(url?: string): Record<string, any>;
2109
+ /**
2110
+ * 对象转为查询参数字符串
2111
+ * @param {Object} params 参数对象
2112
+ * @param {string} url url地址,如果不为空,则会拼接好查询参数字符串的url地址
2113
+ * @returns {string} 返回参数字符串
2114
+ */
2115
+ declare function stringifySearchParam(params: Record<string, any>, url?: string): string;
2116
+ /**
2117
+ * 查询参数字符串中在最前面追加新参数和值
2118
+ * @param {string} url url地址,默认当前url地址
2119
+ * @param {string} name 参数名
2120
+ * @param {string|number|Array} value 参数值,如果是数组,则解析为:&ids[0]=1&ids[2]=2
2121
+ * @returns {string} 返回查询参数字符串
2122
+ */
2123
+ declare function prependSearchParam(url: string | undefined, name: string, value: string | number | number[] | string[]): string;
2124
+ /**
2125
+ * 查询参数字符串中在某个参数的前面追加新参数和值
2126
+ * @param {string} url url地址,默认当前url地址
2127
+ * @param {string} name 参数名
2128
+ * @param {string|number|Array} value 参数值,如果是数组,则解析为:&ids[0]=1&ids[2]=2
2129
+ * @param {string} beforeParam 在前面追加参数的名称
2130
+ * @returns {string} 返回查询参数字符串
2131
+ */
2132
+ declare function prependToSearchParam(url: string | undefined, beforeParam: string, name: string, value: string | number | number[] | string[]): string;
2133
+ /**
2134
+ * 查询参数字符串中在最后面追加新参数和值
2135
+ * @param {string} url url地址,默认当前url地址
2136
+ * @param {string} name 参数名
2137
+ * @param {string,number,Array} value 参数值,如果是数组,则解析为:&ids[0]=1&ids[2]=2
2138
+ * @returns {string} 返回查询参数字符串
2139
+ */
2140
+ declare function appendSearchParam(url: string | undefined, name: string, value: string | number | number[] | string[]): string;
2141
+ /**
2142
+ * 查询参数字符串中在某个参数的后面追加新参数和值
2143
+ * @param {string} url url地址,默认当前url地址
2144
+ * @param {string} name 参数名
2145
+ * @param {string,number,Array} value 参数值,如果是数组,则解析为:&ids[0]=1&ids[2]=2
2146
+ * @param {string} afterName 在后面追加参数的名称
2147
+ * @returns {string} 返回查询参数字符串
2148
+ */
2149
+ declare function appendToSearchParam(url: string | undefined, afterName: string, name: string, value: string | number | number[] | string[]): string;
2150
+ /**
2151
+ * 查询参数字符串中移除某个参数和值
2152
+ * @param {string} url url地址,默认当前url地址
2153
+ * @param {string} name 参数名
2154
+ * @returns {string} 返回查询参数字符串
2155
+ */
2156
+ declare function removeSearchParam(url: string | undefined, name: string): string;
2157
+
2158
+ /**
2159
+ * 浏览器是否支持 Cookie
2160
+ * @returns {boolean} 返回true和false
2161
+ */
2162
+ declare function isSupportCookie(): boolean;
2163
+ /**
2164
+ * 通过name获取cookie
2165
+ * @param {string} name 参数name
2166
+ * @returns {string} 返回获取的值
2167
+ */
2168
+ declare function getCookie(name: string): string;
2169
+ /**
2170
+ * 通过name设置cookie
2171
+ * 注:timestamp参数不填,则默认为session级别,浏览器关闭即cookie过期
2172
+ * @param {string} name 参数name
2173
+ * @param {string} value 设置的value
2174
+ * @param {number} timestamp 过期的时间戳值,默认为一天,设置一天过期则为:24*60*60*1000
2175
+ */
2176
+ declare function setCookie(name: string, value: string, timestamp?: number): void;
2177
+ /**
2178
+ * 通过name删除cookie
2179
+ * @param {string} name 参数name
2180
+ */
2181
+ declare function removeCookie(name: string): void;
2182
+ /**
2183
+ * 清空当前站点域名的cookie
2184
+ * @param {string} domain 域名地址,默认是当前站点域名
2185
+ */
2186
+ declare function clearCookie(domain?: string): void;
2187
+
2188
+ /**
2189
+ * 通过key从localStorage缓存中获取数据
2190
+ * @param {string} key key值
2191
+ * @returns {string} 返回数据
2192
+ */
2193
+ declare function getLocalStorage(key: string): string | undefined;
2194
+ /**
2195
+ * 设置localStorage缓存数据
2196
+ * @param {string} key key值
2197
+ * @param {string} value value值
2198
+ */
2199
+ declare function setLocalStorage(key: string, value: string): void;
2200
+ /**
2201
+ * 通过key从localStorage缓存中删除数据
2202
+ * @param {string} key key值
2203
+ */
2204
+ declare function removeLocalStorage(key: string): void;
2205
+ /**
2206
+ * 清空localStorage缓存中所有数据
2207
+ */
2208
+ declare function clearLocalStorage(): void;
2209
+
2210
+ /**
2211
+ * 通过key从sessionStorage缓存中获取数据
2212
+ * @param {string} key key值
2213
+ * @returns {string} 返回数据
2214
+ */
2215
+ declare function getSessionStorage(key: string): string | undefined;
2216
+ /**
2217
+ * 设置sessionStorage缓存数据
2218
+ * @param {string} key key值
2219
+ * @param {string} value value值
2220
+ */
2221
+ declare function setSessionStorage(key: string, value: string): void;
2222
+ /**
2223
+ * 通过key从sessionStorage缓存中删除数据
2224
+ * @param {string} key key值
2225
+ */
2226
+ declare function removeSessionStorage(key: string): void;
2227
+ /**
2228
+ * 清空sessionStorage缓存中所有数据
2229
+ */
2230
+ declare function clearSessionStorage(): void;
2231
+
2232
+ /**
2233
+ * @module 浏览器Storage
2234
+ */
2235
+ /**
2236
+ * 浏览器是否支持 Storage
2237
+ * @returns {boolean} 返回true和false
2238
+ */
2239
+ declare function isSupportStorage(): boolean;
2240
+
2241
+ /**
2242
+ * @module 浏览器Dom
2243
+ */
2244
+ /**
2245
+ * 判断元素包含某个类名
2246
+ * @param {HTMLElement} elem 元素
2247
+ * @param {string} className 类名
2248
+ * @return {boolean} 返回true和false
2249
+ */
2250
+ declare function hasClass(elem: HTMLElement, className: string): boolean;
2251
+ /**
2252
+ * 元素添加类名
2253
+ * @param {HTMLElement} elem 元素
2254
+ * @param {string} className 类名
2255
+ */
2256
+ declare function addClass(elem: HTMLElement, className: string): void;
2257
+ /**
2258
+ * 元素删除类名
2259
+ * @param {HTMLElement} elem 元素
2260
+ * @param {string} className 类名
2261
+ */
2262
+ declare function removeClass(elem: HTMLElement, className: string): void;
2263
+ /**
2264
+ * 元素替换类名
2265
+ * @param {HTMLElement} elem 元素
2266
+ * @param {string} newClassName 新的类名
2267
+ * @param {string} oldClassName 被替换掉的旧类名
2268
+ */
2269
+ declare function replaceClass(elem: HTMLElement, newClassName: string, oldClassName: string): void;
2270
+ /**
2271
+ * 添加元素的style样式
2272
+ * @param {HTMLElement} elem 元素
2273
+ * @param {Object} styles 样式属性集合
2274
+ */
2275
+ declare function addStyle(elem: HTMLElement, styles?: Record<string, string>): void;
2276
+ /**
2277
+ * 获取元素的style样式
2278
+ * @param {HTMLElement} elem 元素
2279
+ * @param {string} name 属性
2280
+ * @returns {string|undefined} 返回样式的值
2281
+ */
2282
+ declare function getStyle(elem: HTMLElement, name: string): string | undefined;
2283
+ /**
2284
+ * 删除元素的style样式
2285
+ * @param {HTMLElement} elem 元素
2286
+ * @param {string} name 属性
2287
+ */
2288
+ declare function removeStyle(elem: HTMLElement, name: string): void;
2289
+ /**
2290
+ * html标签转义
2291
+ * @param {string} htmlStr html字符串
2292
+ * @returns {string} 返回转义后的字符串
2293
+ */
2294
+ declare function htmlEncode(htmlStr: string): string;
2295
+ /**
2296
+ * html标签解码
2297
+ * @param {string} htmlStr html字符串
2298
+ * @returns {string} 返回解析后的字符串
2299
+ */
2300
+ declare function htmlDecode(htmlStr: string): string;
2301
+
2302
+ /**
2303
+ * @module 浏览器Device
2304
+ */
2305
+ /**
2306
+ * 获取浏览器信息
2307
+ * @description 会获取到浏览器对应的名称以及版本
2308
+ * @returns {Object} 返回浏览器信息
2309
+ */
2310
+ declare function getBrowserInfo(): "unknown" | {
2311
+ name: string;
2312
+ version: string;
2313
+ };
2314
+ /**
2315
+ * 判断是pc端
2316
+ * @returns {boolean} 返回true和false
2317
+ */
2318
+ declare function isPc(): boolean;
2319
+ /**
2320
+ * 判断是手机端
2321
+ * @description 包含 android、iphone、黑莓手机、微软手机 等多种操作系统机型
2322
+ * @returns {boolean} 返回true和false
2323
+ */
2324
+ declare function isPhone(): boolean;
2325
+ /**
2326
+ * 判断是 android
2327
+ * @returns {boolean} 返回true和false
2328
+ */
2329
+ declare function isAndroid(): boolean;
2330
+ /**
2331
+ * 判断是 ios
2332
+ * @returns {boolean} 返回true和false
2333
+ */
2334
+ declare function isIos(): boolean;
2335
+ /**
2336
+ * 判断是 windows phone
2337
+ * @returns {boolean} 返回true和false
2338
+ */
2339
+ declare function isWindowsPhone(): boolean;
2340
+ /**
2341
+ * 判断是 windows
2342
+ * @returns {boolean} 返回true和false
2343
+ */
2344
+ declare function isWindows(): boolean;
2345
+ /**
2346
+ * 判断是 linux
2347
+ * @returns {boolean} 返回true和false
2348
+ */
2349
+ declare function isLinux(): boolean;
2350
+ /**
2351
+ * 判断是 Mac
2352
+ * @returns {boolean} 返回true和false
2353
+ */
2354
+ declare function isMac(): boolean;
2355
+ /**
2356
+ * 判断是iphone
2357
+ *@returns {boolean} 返回true和false
2358
+ */
2359
+ declare function isIphone(): boolean;
2360
+ /**
2361
+ * 判断是ipad
2362
+ *@return {boolean} 返回true和false
2363
+ */
2364
+ declare function isIpad(): boolean;
2365
+ /**
2366
+ * 判断是微信内置浏览器
2367
+ * @returns {boolean} 返回true和false
2368
+ */
2369
+ declare function isWeixin(): boolean;
2370
+ /**
2371
+ * 判断是QQ内置浏览器
2372
+ * @returns {boolean} 返回true和false
2373
+ */
2374
+ declare function isQQ(): boolean;
2375
+
2376
+ /**
2377
+ * @module 浏览器Clipboard
2378
+ */
2379
+ /**
2380
+ * 获得剪切板数据
2381
+ * @description 获得的剪切板的数据是会返回多个可用的MIME类型,比如是纯文本就返回一个['text/plain'],是复制的html则会返回两个可用的['text/plain','text/html'],是复制的图片则是['image/png']
2382
+ * @returns {Promise} 返回剪切板的数据,是数组形式,如果是文本则是字符串,否则是blob数据
2383
+ */
2384
+ declare function getClipboard(): Promise<unknown>;
2385
+ /**
2386
+ * 获得剪切板文本
2387
+ * @returns {Promise} 返回剪切板文本
2388
+ */
2389
+ declare function getClipboardText(): Promise<unknown>;
2390
+ /**
2391
+ * 设置剪切板数据
2392
+ * @description 可以设置文本或者blob类型的数据
2393
+ * @param {string|Blob} data 写入的数据,可以是文本或blob数据
2394
+ * @returns {Promise} 返回结果
2395
+ */
2396
+ declare function setClipboard(data: string | Blob): Promise<unknown>;
2397
+ /**
2398
+ * 设置剪切板文本
2399
+ * @param {string} text 写入的文本
2400
+ * @returns {Promise} 返回结果
2401
+ */
2402
+ declare function setClipboardText(text: string): Promise<unknown>;
2403
+ /**
2404
+ * 清空剪切板
2405
+ * @returns {Promise} 返回结果
2406
+ */
2407
+ declare function clearClipboard(): Promise<unknown>;
2408
+
2409
+ declare function testLoaded(): void;
19
2410
 
20
- export { getGUID, getUUID, testLoadUtils };
2411
+ export { DATE, ID_CARD, KEYCODE, LANG, MATH, REGEXP, SM4, SORT, add, addClass, addDate, addHours, addMillisecond, addMinutes, addMonth, addQuarter, addSeconds, addStyle, addWeek, addYear, appendSearchParam, appendToSearchParam, arrayAvg, arrayBottom, arrayComplement, arrayCreate, arrayDifference, arrayDown, arrayEquals, arrayInsert, arrayInsertAfter, arrayInsertBefore, arrayIntersect, arrayMax, arrayMin, arrayRemove, arrayRemoveAfter, arrayRemoveBefore, arrayShuffle, arraySort, arraySortBy, arraySum, arraySwap, arrayToTree, arrayTop, arrayUnion, arrayUnique, arrayUp, base64Decode, base64DecodeURI, base64Encode, base64EncodeURI, base64FromHex, base64FromUint8Array, base64ToBlob, base64ToFile, base64ToHex, base64ToUint8Array, blobToBase64, blobToFile, blobToText, clearClipboard, clearCookie, clearLocalStorage, clearSessionStorage, clone, debounce, deepClone, deepCompare, divide, downloadBlobFile, downloadFileUrl, equals, equalsIgnoreCase, fileToBase64, fileToBlob, fileToUrl, formatFileSize, formatRmbChinese, formatStartOf, formatStartOfBankCard, formatStartOfIDCard, formatStartOfMobile, formatStartOfName, formatTemplate, formatThousand, formatTitle, gcd, generateSM4Iv, generateSM4Key, getAge, getAgeByIDCard, getBetweenDates, getBetweenMonths, getBetweenYears, getBirthdayByIDCard, getBrowserInfo, getChineseZodiac, getClipboard, getClipboardText, getCookie, getDate, getDateArray, getDateObject, getDateTime, getDayOfMonth, getDayOfWeek, getDayOfYear, getDaysOfMonth, getDaysOfWeek, getDaysOfYear, getDiffDay, getDiffMonth, getDiffWeek, getDiffYear, getDrawHex, getDrawRgb, getDrawRgba, getFileName, getFileSuffix, getFirstDateOfMonth, getFirstDateOfWeek, getFirstDateOfYear, getFullDateOfMonth, getFullDateOfWeek, getFullDateOfYear, getGUID, getHost, getHostName, getInfoByIDCard, getKeyCode, getKeyName, getLastDateOfMonth, getLastDateOfWeek, getLastDateOfYear, getLimit, getLocalStorage, getNextPage, getNow, getOverTime, getPastTime, getPort, getPrevPage, getProtocol, getProvinceByIDCard, getQuarter, getRainbowPager, getRandom, getRandomDigit, getSearchParam, getSearchString, getSessionStorage, getSexByIDCard, getStyle, getTimestamp, getTotalPage, getUUID, getUnixTimestamp, getUrlHash, getUrlPath, getValueByPath, getWeek, getWeekOfMonth, getWeekOfYear, getWeeksOfMonth, getWeeksOfYear, getZodiac, hasClass, hasSearchParam, hexToHsl, hexToRgb, hexToRgba, htmlDecode, htmlEncode, inArray, inString, isAM, isAfter, isAfterTomorrow, isAndroid, isArray, isAsyncFunction, isBefore, isBeforeYesterday, isBetween, isBigInt, isBlank, isBoolean, isChinese, isCommonYear, isDate, isDecimal, isEmail, isEmpty, isEnglish, isError, isExternal, isFalse, isFirstDayOfMonth, isFirstDayOfWeek, isFirstDayOfYear, isFunction, isFunctionString, isIdCard, isInteger, isIos, isIpad, isIphone, isJson, isLastDayOfMonth, isLastDayOfWeek, isLastDayOfYear, isLeapYear, isLinux, isLowerCase, isMac, isMap, isMobile, isNaN, isNotBlank, isNotEmpty, isNotNaN, isNotNull, isNotUndefined, isNull, isNumber, isObject, isPM, isPc, isPhone, isPromise, isQQ, isRegExp, isSame, isSameMonth, isSameOrAfter, isSameOrBefore, isSameWeek, isSameYear, isSet, isString, isSupportCookie, isSupportStorage, isSymbol, isToday, isTomorrow, isTrue, isUndefined, isUpperCase, isUrl, isWeakMap, isWeakSet, isWeekend, isWeixin, isWindows, isWindowsPhone, isWorkday, isYesterday, jsonToMap, lastMonth, lastWeek, lastYear, mapToJson, mapToObject, md5, md5Hmac, md5HmacRaw, md5Raw, merge, modulo, multiply, nextMonth, nextWeek, nextYear, objectEquals, objectToMap, parseFloat, parseInt, parseJson, parseSearchParam, prependSearchParam, prependToSearchParam, regexpTest, removeClass, removeCookie, removeLocalStorage, removeSearchParam, removeSessionStorage, removeStyle, replaceAll, replaceClass, rgbToHex, rgbaToHex, rgbaToHsl, scm, setClipboard, setClipboardText, setCookie, setLocalStorage, setSearchParam, setSessionStorage, setValueByPath, sha224, sha224Hmac, sha224HmacRaw, sha224Raw, sha256, sha256Hmac, sha256HmacRaw, sha256Raw, sleep, sm3Encrypt, sm3EncryptHmac, sm4Decrypt, sm4Encrypt, stringifyJson, stringifySearchParam, subtract, testLoaded, throttle, toCamelCase, toDate, toDateString, toDateUTC, toDecimal, toFixed, toKebabCase, toLowerCase, toPascalCase, toSnakeCase, toUpperCase, today, tomorrow, treeToArray, trim, trimAll, trimEnd, trimStart, urlToBase64, urlToFile, yesterday, zeroEnd, zeroStart };
2412
+ export type { DateOptions, SM4DataType, SM4Options };