@suveren/gateway 0.3.2 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/control-plane/index.mjs +2 -2
- package/dist/mcp-server/http.mjs +73 -68
- package/dist/ui/assets/index-mg8gMTzG.js +105 -0
- package/dist/ui/index.html +1 -1
- package/node_modules/@hap/core/dist/index.d.mts +7 -2
- package/node_modules/@hap/core/dist/index.d.ts +7 -2
- package/node_modules/@hap/core/dist/index.js +2 -2
- package/node_modules/@hap/core/dist/index.mjs +2 -2
- package/node_modules/@hap/core/package.json +1 -1
- package/node_modules/@hap/core/src/identity.ts +9 -4
- package/node_modules/@modelcontextprotocol/sdk/node_modules/iconv-lite/encodings/sbcs-data.js +2 -0
- package/node_modules/@modelcontextprotocol/sdk/node_modules/iconv-lite/encodings/utf32.js +10 -3
- package/node_modules/@modelcontextprotocol/sdk/node_modules/iconv-lite/package.json +2 -2
- package/node_modules/@modelcontextprotocol/sdk/node_modules/iconv-lite/types/encodings.d.ts +2 -0
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/buffer.d.ts +64 -25
- package/node_modules/@types/node/crypto.d.ts +18 -5
- package/node_modules/@types/node/diagnostics_channel.d.ts +237 -3
- package/node_modules/@types/node/dns.d.ts +1 -1
- package/node_modules/@types/node/ffi.d.ts +486 -0
- package/node_modules/@types/node/fs/promises.d.ts +3 -0
- package/node_modules/@types/node/fs.d.ts +21 -6
- package/node_modules/@types/node/http.d.ts +25 -0
- package/node_modules/@types/node/index.d.ts +1 -0
- package/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/node/process.d.ts +14 -1
- package/node_modules/@types/node/quic.d.ts +92 -11
- package/node_modules/@types/node/sqlite.d.ts +55 -0
- package/node_modules/@types/node/stream/iter.d.ts +150 -0
- package/node_modules/@types/node/stream.d.ts +32 -0
- package/node_modules/@types/node/test.d.ts +112 -2
- package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
- package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
- package/node_modules/@types/node/util.d.ts +19 -2
- package/node_modules/@types/node/v8.d.ts +84 -2
- package/node_modules/@types/node/worker_threads.d.ts +8 -7
- package/node_modules/raw-body/node_modules/iconv-lite/encodings/sbcs-data.js +2 -0
- package/node_modules/raw-body/node_modules/iconv-lite/encodings/utf32.js +10 -3
- package/node_modules/raw-body/node_modules/iconv-lite/package.json +2 -2
- package/node_modules/raw-body/node_modules/iconv-lite/types/encodings.d.ts +2 -0
- package/package.json +2 -2
- package/dist/ui/assets/index-RkZBhIxU.js +0 -105
package/dist/ui/index.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Suveren</title>
|
|
7
|
-
<script type="module" crossorigin src="/assets/index-
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-mg8gMTzG.js"></script>
|
|
8
8
|
<link rel="stylesheet" crossorigin href="/assets/index-BUgn3e63.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body>
|
|
@@ -652,8 +652,13 @@ declare function validateSubject(subject: Subject): SubjectValidation;
|
|
|
652
652
|
* The name appears only at `high` with a disclosed name; otherwise no name.
|
|
653
653
|
*
|
|
654
654
|
* - low / no disclosure → "Sent by an AI agent via «operator»"
|
|
655
|
-
* - high / as_vouched → "Sent by an AI agent of «name
|
|
656
|
-
* - high / eudi → "Sent by an AI agent of «name
|
|
655
|
+
* - high / as_vouched → "Sent by an AI agent of «name», verified by «operator»"
|
|
656
|
+
* - high / eudi → "Sent by an AI agent of «name», identity verified (EUDI)"
|
|
657
|
+
*
|
|
658
|
+
* Punctuation is ASCII (comma, not em-dash) so the line survives header and
|
|
659
|
+
* plain-text encoding intact across email, calendar, and publishing channels.
|
|
660
|
+
* The leading verb ("Sent") is the default; presentation layers may swap it
|
|
661
|
+
* (e.g. the gateway uses "Published" for the publish profile).
|
|
657
662
|
*
|
|
658
663
|
* `operatorName` is the rendered AS operator (e.g. "Suveren") — never hardcode it
|
|
659
664
|
* upstream; a different operator self-vouches under its own name.
|
|
@@ -652,8 +652,13 @@ declare function validateSubject(subject: Subject): SubjectValidation;
|
|
|
652
652
|
* The name appears only at `high` with a disclosed name; otherwise no name.
|
|
653
653
|
*
|
|
654
654
|
* - low / no disclosure → "Sent by an AI agent via «operator»"
|
|
655
|
-
* - high / as_vouched → "Sent by an AI agent of «name
|
|
656
|
-
* - high / eudi → "Sent by an AI agent of «name
|
|
655
|
+
* - high / as_vouched → "Sent by an AI agent of «name», verified by «operator»"
|
|
656
|
+
* - high / eudi → "Sent by an AI agent of «name», identity verified (EUDI)"
|
|
657
|
+
*
|
|
658
|
+
* Punctuation is ASCII (comma, not em-dash) so the line survives header and
|
|
659
|
+
* plain-text encoding intact across email, calendar, and publishing channels.
|
|
660
|
+
* The leading verb ("Sent") is the default; presentation layers may swap it
|
|
661
|
+
* (e.g. the gateway uses "Published" for the publish profile).
|
|
657
662
|
*
|
|
658
663
|
* `operatorName` is the rendered AS operator (e.g. "Suveren") — never hardcode it
|
|
659
664
|
* upstream; a different operator self-vouches under its own name.
|
|
@@ -170,9 +170,9 @@ function deriveIdentityLine(subject, { operatorName }) {
|
|
|
170
170
|
return `Sent by an AI agent via ${operatorName}`;
|
|
171
171
|
}
|
|
172
172
|
if (subject.method === "eudi") {
|
|
173
|
-
return `Sent by an AI agent of ${name}
|
|
173
|
+
return `Sent by an AI agent of ${name}, identity verified (EUDI)`;
|
|
174
174
|
}
|
|
175
|
-
return `Sent by an AI agent of ${name}
|
|
175
|
+
return `Sent by an AI agent of ${name}, verified by ${operatorName}`;
|
|
176
176
|
}
|
|
177
177
|
|
|
178
178
|
// src/frame.ts
|
|
@@ -99,9 +99,9 @@ function deriveIdentityLine(subject, { operatorName }) {
|
|
|
99
99
|
return `Sent by an AI agent via ${operatorName}`;
|
|
100
100
|
}
|
|
101
101
|
if (subject.method === "eudi") {
|
|
102
|
-
return `Sent by an AI agent of ${name}
|
|
102
|
+
return `Sent by an AI agent of ${name}, identity verified (EUDI)`;
|
|
103
103
|
}
|
|
104
|
-
return `Sent by an AI agent of ${name}
|
|
104
|
+
return `Sent by an AI agent of ${name}, verified by ${operatorName}`;
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
// src/frame.ts
|
|
@@ -56,8 +56,13 @@ export function validateSubject(subject: Subject): SubjectValidation {
|
|
|
56
56
|
* The name appears only at `high` with a disclosed name; otherwise no name.
|
|
57
57
|
*
|
|
58
58
|
* - low / no disclosure → "Sent by an AI agent via «operator»"
|
|
59
|
-
* - high / as_vouched → "Sent by an AI agent of «name
|
|
60
|
-
* - high / eudi → "Sent by an AI agent of «name
|
|
59
|
+
* - high / as_vouched → "Sent by an AI agent of «name», verified by «operator»"
|
|
60
|
+
* - high / eudi → "Sent by an AI agent of «name», identity verified (EUDI)"
|
|
61
|
+
*
|
|
62
|
+
* Punctuation is ASCII (comma, not em-dash) so the line survives header and
|
|
63
|
+
* plain-text encoding intact across email, calendar, and publishing channels.
|
|
64
|
+
* The leading verb ("Sent") is the default; presentation layers may swap it
|
|
65
|
+
* (e.g. the gateway uses "Published" for the publish profile).
|
|
61
66
|
*
|
|
62
67
|
* `operatorName` is the rendered AS operator (e.g. "Suveren") — never hardcode it
|
|
63
68
|
* upstream; a different operator self-vouches under its own name.
|
|
@@ -71,7 +76,7 @@ export function deriveIdentityLine(
|
|
|
71
76
|
return `Sent by an AI agent via ${operatorName}`;
|
|
72
77
|
}
|
|
73
78
|
if (subject!.method === 'eudi') {
|
|
74
|
-
return `Sent by an AI agent of ${name}
|
|
79
|
+
return `Sent by an AI agent of ${name}, identity verified (EUDI)`;
|
|
75
80
|
}
|
|
76
|
-
return `Sent by an AI agent of ${name}
|
|
81
|
+
return `Sent by an AI agent of ${name}, verified by ${operatorName}`;
|
|
77
82
|
}
|
|
@@ -31,7 +31,9 @@ function Utf32Encoder (options, codec) {
|
|
|
31
31
|
|
|
32
32
|
Utf32Encoder.prototype.write = function (str) {
|
|
33
33
|
var src = Buffer.from(str, "ucs2")
|
|
34
|
-
|
|
34
|
+
// src.length * 2 covers this chunk's code units (4 bytes each); the extra 4 bytes leave room for a
|
|
35
|
+
// high surrogate held over from a previous chunk, which is flushed ahead of this chunk's units.
|
|
36
|
+
var dst = Buffer.alloc(src.length * 2 + 4)
|
|
35
37
|
var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE
|
|
36
38
|
var offset = 0
|
|
37
39
|
|
|
@@ -113,9 +115,9 @@ Utf32Decoder.prototype.write = function (src) {
|
|
|
113
115
|
// NOTE: codepoint is a signed int32 and can be negative.
|
|
114
116
|
// NOTE: We copied this block from below to help V8 optimize it (it works with array, not buffer).
|
|
115
117
|
if (isLE) {
|
|
116
|
-
codepoint = overflow[
|
|
118
|
+
codepoint = overflow[0] | (overflow[1] << 8) | (overflow[2] << 16) | (overflow[3] << 24)
|
|
117
119
|
} else {
|
|
118
|
-
codepoint = overflow[
|
|
120
|
+
codepoint = overflow[3] | (overflow[2] << 8) | (overflow[1] << 16) | (overflow[0] << 24)
|
|
119
121
|
}
|
|
120
122
|
overflow.length = 0
|
|
121
123
|
|
|
@@ -169,7 +171,12 @@ function _writeCodepoint (dst, offset, codepoint, badChar) {
|
|
|
169
171
|
};
|
|
170
172
|
|
|
171
173
|
Utf32Decoder.prototype.end = function () {
|
|
174
|
+
if (this.overflow.length === 0) { return }
|
|
175
|
+
|
|
176
|
+
// A leftover, incomplete 4-byte code unit at the end of the input is ill-formed. Substitute a
|
|
177
|
+
// single U+FFFD (Unicode Standard conformance clause C10) instead of silently dropping the bytes.
|
|
172
178
|
this.overflow.length = 0
|
|
179
|
+
return String.fromCharCode(this.badChar)
|
|
173
180
|
}
|
|
174
181
|
|
|
175
182
|
// == UTF-32 Auto codec =============================================================
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iconv-lite",
|
|
3
3
|
"description": "Convert character encodings in pure javascript.",
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.3",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"iconv",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"stream": false
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@arethetypeswrong/cli": "^0.
|
|
49
|
+
"@arethetypeswrong/cli": "^0.18.4",
|
|
50
50
|
"@stylistic/eslint-plugin": "^5.1.0",
|
|
51
51
|
"@stylistic/eslint-plugin-js": "^4.1.0",
|
|
52
52
|
"@types/node": "^24.0.12",
|
|
@@ -8,7 +8,7 @@ This package contains type definitions for node (https://nodejs.org/).
|
|
|
8
8
|
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
|
|
9
9
|
|
|
10
10
|
### Additional Details
|
|
11
|
-
* Last updated: Wed,
|
|
11
|
+
* Last updated: Wed, 01 Jul 2026 11:03:38 GMT
|
|
12
12
|
* Dependencies: [undici-types](https://npmjs.com/package/undici-types)
|
|
13
13
|
|
|
14
14
|
# Credits
|
|
@@ -1550,11 +1550,12 @@ declare module "node:buffer" {
|
|
|
1550
1550
|
/**
|
|
1551
1551
|
* If `value` is:
|
|
1552
1552
|
*
|
|
1553
|
-
* * a string, `value` is interpreted according to the character encoding in
|
|
1554
|
-
*
|
|
1555
|
-
*
|
|
1553
|
+
* * a string, `value` is interpreted according to the character encoding in
|
|
1554
|
+
* `encoding`.
|
|
1555
|
+
* * a `Buffer` or `Uint8Array`, `value` will be used in its entirety.
|
|
1556
|
+
* To compare a partial `Buffer`, use `buf.subarray`.
|
|
1556
1557
|
* * a number, `value` will be interpreted as an unsigned 8-bit integer
|
|
1557
|
-
*
|
|
1558
|
+
* value between `0` and `255`.
|
|
1558
1559
|
*
|
|
1559
1560
|
* ```js
|
|
1560
1561
|
* import { Buffer } from 'node:buffer';
|
|
@@ -1582,12 +1583,13 @@ declare module "node:buffer" {
|
|
|
1582
1583
|
* // Prints: 6
|
|
1583
1584
|
* ```
|
|
1584
1585
|
*
|
|
1585
|
-
* If `value` is not a string, number, or `Buffer`, this method will throw a
|
|
1586
|
+
* If `value` is not a string, number, or `Buffer`, this method will throw a
|
|
1587
|
+
* `TypeError`. If `value` is a number, it will be coerced to a valid byte value,
|
|
1586
1588
|
* an integer between 0 and 255.
|
|
1587
1589
|
*
|
|
1588
1590
|
* If `byteOffset` is not a number, it will be coerced to a number. If the result
|
|
1589
1591
|
* of coercion is `NaN` or `0`, then the entire buffer will be searched. This
|
|
1590
|
-
* behavior matches
|
|
1592
|
+
* behavior matches `String.prototype.indexOf()`.
|
|
1591
1593
|
*
|
|
1592
1594
|
* ```js
|
|
1593
1595
|
* import { Buffer } from 'node:buffer';
|
|
@@ -1608,14 +1610,27 @@ declare module "node:buffer" {
|
|
|
1608
1610
|
* ```
|
|
1609
1611
|
*
|
|
1610
1612
|
* If `value` is an empty string or empty `Buffer` and `byteOffset` is less
|
|
1611
|
-
* than `buf.length`, `byteOffset` will be returned. If `value` is empty and
|
|
1613
|
+
* than `buf.length`, `byteOffset` will be returned. If `value` is empty and
|
|
1614
|
+
* `byteOffset` is at least `buf.length`, `buf.length` will be returned.
|
|
1612
1615
|
* @since v1.5.0
|
|
1613
1616
|
* @param value What to search for.
|
|
1614
|
-
* @param
|
|
1615
|
-
*
|
|
1616
|
-
* @
|
|
1617
|
-
|
|
1618
|
-
|
|
1617
|
+
* @param start Where to begin searching in `buf`. If negative, then
|
|
1618
|
+
* offset is calculated from the end of `buf`. **Default:** `0`.
|
|
1619
|
+
* @param end Where to stop searching in `buf` (exclusive). **Default:**
|
|
1620
|
+
* `buf.length`.
|
|
1621
|
+
* @param encoding If `value` is a string, this is the encoding used to
|
|
1622
|
+
* determine the binary representation of the string that will be searched for in
|
|
1623
|
+
* `buf`. **Default:** `'utf8'`.
|
|
1624
|
+
* @returns The index of the first occurrence of `value` in `buf`, or
|
|
1625
|
+
* `-1` if `buf` does not contain `value`.
|
|
1626
|
+
*/
|
|
1627
|
+
indexOf(
|
|
1628
|
+
value: string | number | Uint8Array,
|
|
1629
|
+
start?: number,
|
|
1630
|
+
end?: number,
|
|
1631
|
+
encoding?: BufferEncoding,
|
|
1632
|
+
): number;
|
|
1633
|
+
indexOf(value: string | number | Uint8Array, start: number, encoding: BufferEncoding): number;
|
|
1619
1634
|
indexOf(value: string | number | Uint8Array, encoding: BufferEncoding): number;
|
|
1620
1635
|
/**
|
|
1621
1636
|
* Identical to `buf.indexOf()`, except the last occurrence of `value` is found
|
|
@@ -1649,12 +1664,13 @@ declare module "node:buffer" {
|
|
|
1649
1664
|
* // Prints: 4
|
|
1650
1665
|
* ```
|
|
1651
1666
|
*
|
|
1652
|
-
* If `value` is not a string, number, or `Buffer`, this method will throw a
|
|
1667
|
+
* If `value` is not a string, number, or `Buffer`, this method will throw a
|
|
1668
|
+
* `TypeError`. If `value` is a number, it will be coerced to a valid byte value,
|
|
1653
1669
|
* an integer between 0 and 255.
|
|
1654
1670
|
*
|
|
1655
1671
|
* If `byteOffset` is not a number, it will be coerced to a number. Any arguments
|
|
1656
1672
|
* that coerce to `NaN`, like `{}` or `undefined`, will search the whole buffer.
|
|
1657
|
-
* This behavior matches
|
|
1673
|
+
* This behavior matches `String.prototype.lastIndexOf()`.
|
|
1658
1674
|
*
|
|
1659
1675
|
* ```js
|
|
1660
1676
|
* import { Buffer } from 'node:buffer';
|
|
@@ -1680,11 +1696,24 @@ declare module "node:buffer" {
|
|
|
1680
1696
|
* If `value` is an empty string or empty `Buffer`, `byteOffset` will be returned.
|
|
1681
1697
|
* @since v6.0.0
|
|
1682
1698
|
* @param value What to search for.
|
|
1683
|
-
* @param
|
|
1684
|
-
*
|
|
1685
|
-
*
|
|
1686
|
-
|
|
1687
|
-
|
|
1699
|
+
* @param start Where to begin searching in `buf`. If negative, then
|
|
1700
|
+
* offset is calculated from the end of `buf`. **Default:**
|
|
1701
|
+
* `buf.length - 1`.
|
|
1702
|
+
* @param end Where to stop searching in `buf` (exclusive). **Default:**
|
|
1703
|
+
* `buf.length`.
|
|
1704
|
+
* @param encoding If `value` is a string, this is the encoding used to
|
|
1705
|
+
* determine the binary representation of the string that will be searched for in
|
|
1706
|
+
* `buf`. **Default:** `'utf8'`.
|
|
1707
|
+
* @returns The index of the last occurrence of `value` in `buf`, or
|
|
1708
|
+
* `-1` if `buf` does not contain `value`.
|
|
1709
|
+
*/
|
|
1710
|
+
lastIndexOf(
|
|
1711
|
+
value: string | number | Uint8Array,
|
|
1712
|
+
start?: number,
|
|
1713
|
+
end?: number,
|
|
1714
|
+
encoding?: BufferEncoding,
|
|
1715
|
+
): number;
|
|
1716
|
+
lastIndexOf(value: string | number | Uint8Array, start: number, encoding: BufferEncoding): number;
|
|
1688
1717
|
lastIndexOf(value: string | number | Uint8Array, encoding: BufferEncoding): number;
|
|
1689
1718
|
/**
|
|
1690
1719
|
* Equivalent to `buf.indexOf() !== -1`.
|
|
@@ -1711,12 +1740,22 @@ declare module "node:buffer" {
|
|
|
1711
1740
|
* ```
|
|
1712
1741
|
* @since v5.3.0
|
|
1713
1742
|
* @param value What to search for.
|
|
1714
|
-
* @param
|
|
1715
|
-
*
|
|
1716
|
-
* @
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1743
|
+
* @param start Where to begin searching in `buf`. If negative, then
|
|
1744
|
+
* offset is calculated from the end of `buf`. **Default:** `0`.
|
|
1745
|
+
* @param end Where to stop searching in `buf` (exclusive). **Default:**
|
|
1746
|
+
* `buf.length`.
|
|
1747
|
+
* @param encoding If `value` is a string, this is its encoding.
|
|
1748
|
+
* **Default:** `'utf8'`.
|
|
1749
|
+
* @returns `true` if `value` was found in `buf`, `false` otherwise.
|
|
1750
|
+
*/
|
|
1751
|
+
includes(
|
|
1752
|
+
value: string | number | Uint8Array,
|
|
1753
|
+
start?: number,
|
|
1754
|
+
end?: number,
|
|
1755
|
+
encoding?: BufferEncoding,
|
|
1756
|
+
): boolean;
|
|
1757
|
+
includes(value: string | number | Uint8Array, start: number, encoding: BufferEncoding): boolean;
|
|
1758
|
+
includes(value: string | number | Uint8Array, encoding: BufferEncoding): boolean;
|
|
1720
1759
|
}
|
|
1721
1760
|
var Buffer: BufferConstructor;
|
|
1722
1761
|
}
|
|
@@ -1373,9 +1373,9 @@ declare module "node:crypto" {
|
|
|
1373
1373
|
*/
|
|
1374
1374
|
update(data: string | NodeJS.ArrayBufferView, inputEncoding?: BufferEncoding): Verify;
|
|
1375
1375
|
/**
|
|
1376
|
-
* Verifies the provided data using the given `
|
|
1376
|
+
* Verifies the provided data using the given `key` and `signature`.
|
|
1377
1377
|
*
|
|
1378
|
-
* If `
|
|
1378
|
+
* If `key` is not a `KeyObject`, this function behaves as if `key` had been passed to {@link createPublicKey}. If it is an
|
|
1379
1379
|
* object, the following additional properties can be passed:
|
|
1380
1380
|
*
|
|
1381
1381
|
* The `signature` argument is the previously calculated signature for the data, in
|
|
@@ -1392,7 +1392,7 @@ declare module "node:crypto" {
|
|
|
1392
1392
|
* @since v0.1.92
|
|
1393
1393
|
*/
|
|
1394
1394
|
verify(
|
|
1395
|
-
|
|
1395
|
+
key:
|
|
1396
1396
|
| KeyLike
|
|
1397
1397
|
| VerifyKeyObjectInput
|
|
1398
1398
|
| VerifyPublicKeyInput
|
|
@@ -1470,8 +1470,10 @@ declare module "node:crypto" {
|
|
|
1470
1470
|
* If `encoding` is provided a string is returned; otherwise a `Buffer` is returned.
|
|
1471
1471
|
*
|
|
1472
1472
|
* This function is a thin wrapper around [`DH_generate_key()`](https://www.openssl.org/docs/man3.0/man3/DH_generate_key.html). In particular,
|
|
1473
|
-
* once a private key has been generated or set, calling this function only
|
|
1474
|
-
* the public key
|
|
1473
|
+
* once a private key has been generated or set, calling this function only
|
|
1474
|
+
* recomputes the public key from the existing private key. Since the public key is
|
|
1475
|
+
* determined by the private key, the result will be the same unless the private key
|
|
1476
|
+
* has been changed via `diffieHellman.setPrivateKey()`.
|
|
1475
1477
|
* @since v0.5.0
|
|
1476
1478
|
* @param encoding The `encoding` of the return value.
|
|
1477
1479
|
*/
|
|
@@ -2997,6 +2999,7 @@ declare module "node:crypto" {
|
|
|
2997
2999
|
*/
|
|
2998
3000
|
disableEntropyCache?: boolean | undefined;
|
|
2999
3001
|
}
|
|
3002
|
+
interface RandomUUIDV7Options extends RandomUUIDOptions {}
|
|
3000
3003
|
type UUID = `${string}-${string}-${string}-${string}-${string}`;
|
|
3001
3004
|
/**
|
|
3002
3005
|
* Generates a random [RFC 4122](https://www.rfc-editor.org/rfc/rfc4122.txt) version 4 UUID. The UUID is generated using a
|
|
@@ -3004,6 +3007,16 @@ declare module "node:crypto" {
|
|
|
3004
3007
|
* @since v15.6.0, v14.17.0
|
|
3005
3008
|
*/
|
|
3006
3009
|
function randomUUID(options?: RandomUUIDOptions): UUID;
|
|
3010
|
+
/**
|
|
3011
|
+
* Generates a random [RFC 9562](https://www.rfc-editor.org/rfc/rfc9562.txt) version 7 UUID. The UUID contains a millisecond
|
|
3012
|
+
* precision Unix timestamp in the most significant 48 bits, followed by
|
|
3013
|
+
* cryptographically secure random bits for the remaining fields, making it
|
|
3014
|
+
* suitable for use as a database key with time-based sorting. The embedded
|
|
3015
|
+
* timestamp relies on a non-monotonic clock and is not guaranteed to be strictly
|
|
3016
|
+
* increasing.
|
|
3017
|
+
* @since v26.1.0
|
|
3018
|
+
*/
|
|
3019
|
+
function randomUUIDv7(options?: RandomUUIDV7Options): UUID;
|
|
3007
3020
|
interface X509CheckOptions {
|
|
3008
3021
|
subject?: "always" | "default" | "never" | undefined;
|
|
3009
3022
|
wildcards?: boolean | undefined;
|