surgio 3.2.1 → 3.2.3
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/build/base-command.d.ts +1 -0
- package/build/base-command.js +8 -1
- package/build/base-command.js.map +1 -1
- package/build/commands/check.js +1 -2
- package/build/commands/check.js.map +1 -1
- package/build/commands/clean-cache.js +1 -2
- package/build/commands/clean-cache.js.map +1 -1
- package/build/commands/doctor.js +1 -2
- package/build/commands/doctor.js.map +1 -1
- package/build/commands/generate.js +1 -2
- package/build/commands/generate.js.map +1 -1
- package/build/commands/lint.js +1 -0
- package/build/commands/lint.js.map +1 -1
- package/build/commands/new.js +3 -2
- package/build/commands/new.js.map +1 -1
- package/build/commands/subscriptions.js +1 -2
- package/build/commands/subscriptions.js.map +1 -1
- package/build/commands/upload.js +1 -3
- package/build/commands/upload.js.map +1 -1
- package/build/configurables.d.ts +1 -1
- package/build/utils/cache.d.ts +1 -1
- package/build/utils/loon.js +6 -0
- package/build/utils/loon.js.map +1 -1
- package/build/utils/remote-snippet.js +1 -0
- package/build/utils/remote-snippet.js.map +1 -1
- package/build/utils/surge.js +5 -6
- package/build/utils/surge.js.map +1 -1
- package/build/validators/common.d.ts +146 -2
- package/build/validators/common.js +5 -0
- package/build/validators/common.js.map +1 -1
- package/build/validators/http.d.ts +149 -5
- package/build/validators/hysteria2.d.ts +75 -3
- package/build/validators/shadowsocks.d.ts +74 -2
- package/build/validators/shadowsocksr.d.ts +74 -2
- package/build/validators/snell.d.ts +74 -2
- package/build/validators/socks5.d.ts +74 -2
- package/build/validators/surgio-config.d.ts +44 -4
- package/build/validators/surgio-config.js +23 -31
- package/build/validators/surgio-config.js.map +1 -1
- package/build/validators/trojan.d.ts +75 -3
- package/build/validators/tuic.d.ts +300 -12
- package/build/validators/vmess.d.ts +74 -2
- package/build/validators/wireguard.d.ts +72 -0
- package/hygen-template/artifact/new/index.js +2 -2
- package/hygen-template/provider/new/index.js +10 -5
- package/hygen-template/provider/new/template.ejs.t +2 -2
- package/package.json +1 -1
|
@@ -1,6 +1,46 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { NodeTypeEnum } from '../types';
|
|
3
3
|
export declare const ShadowsocksrNodeConfigValidator: z.ZodObject<{
|
|
4
|
+
surgeConfig: z.ZodOptional<z.ZodObject<{
|
|
5
|
+
resolveHostname: z.ZodOptional<z.ZodBoolean>;
|
|
6
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
resolveHostname?: boolean | undefined;
|
|
9
|
+
vmessAEAD?: boolean | undefined;
|
|
10
|
+
}, {
|
|
11
|
+
resolveHostname?: boolean | undefined;
|
|
12
|
+
vmessAEAD?: boolean | undefined;
|
|
13
|
+
}>>;
|
|
14
|
+
surfboardConfig: z.ZodOptional<z.ZodObject<{
|
|
15
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
vmessAEAD?: boolean | undefined;
|
|
18
|
+
}, {
|
|
19
|
+
vmessAEAD?: boolean | undefined;
|
|
20
|
+
}>>;
|
|
21
|
+
quantumultXConfig: z.ZodOptional<z.ZodObject<{
|
|
22
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
vmessAEAD?: boolean | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
vmessAEAD?: boolean | undefined;
|
|
27
|
+
}>>;
|
|
28
|
+
clashConfig: z.ZodOptional<z.ZodObject<{
|
|
29
|
+
enableTuic: z.ZodOptional<z.ZodBoolean>;
|
|
30
|
+
enableShadowTls: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
enableHysteria2: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
clashCore: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"clash">, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>;
|
|
33
|
+
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
enableTuic?: boolean | undefined;
|
|
35
|
+
enableShadowTls?: boolean | undefined;
|
|
36
|
+
enableHysteria2?: boolean | undefined;
|
|
37
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
38
|
+
}, {
|
|
39
|
+
enableTuic?: boolean | undefined;
|
|
40
|
+
enableShadowTls?: boolean | undefined;
|
|
41
|
+
enableHysteria2?: boolean | undefined;
|
|
42
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
43
|
+
}>>;
|
|
4
44
|
mptcp: z.ZodOptional<z.ZodBoolean>;
|
|
5
45
|
tfo: z.ZodOptional<z.ZodBoolean>;
|
|
6
46
|
underlyingProxy: z.ZodOptional<z.ZodString>;
|
|
@@ -32,16 +72,32 @@ export declare const ShadowsocksrNodeConfigValidator: z.ZodObject<{
|
|
|
32
72
|
protoparam: z.ZodString;
|
|
33
73
|
udpRelay: z.ZodOptional<z.ZodBoolean>;
|
|
34
74
|
}, "strip", z.ZodTypeAny, {
|
|
75
|
+
port: string | number;
|
|
35
76
|
type: NodeTypeEnum.Shadowsocksr;
|
|
36
77
|
password: string;
|
|
37
78
|
nodeName: string;
|
|
38
79
|
hostname: string;
|
|
39
|
-
port: string | number;
|
|
40
80
|
method: string;
|
|
41
81
|
obfs: string;
|
|
42
82
|
obfsparam: string;
|
|
43
83
|
protocol: string;
|
|
44
84
|
protoparam: string;
|
|
85
|
+
surgeConfig?: {
|
|
86
|
+
resolveHostname?: boolean | undefined;
|
|
87
|
+
vmessAEAD?: boolean | undefined;
|
|
88
|
+
} | undefined;
|
|
89
|
+
surfboardConfig?: {
|
|
90
|
+
vmessAEAD?: boolean | undefined;
|
|
91
|
+
} | undefined;
|
|
92
|
+
quantumultXConfig?: {
|
|
93
|
+
vmessAEAD?: boolean | undefined;
|
|
94
|
+
} | undefined;
|
|
95
|
+
clashConfig?: {
|
|
96
|
+
enableTuic?: boolean | undefined;
|
|
97
|
+
enableShadowTls?: boolean | undefined;
|
|
98
|
+
enableHysteria2?: boolean | undefined;
|
|
99
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
100
|
+
} | undefined;
|
|
45
101
|
mptcp?: boolean | undefined;
|
|
46
102
|
tfo?: boolean | undefined;
|
|
47
103
|
underlyingProxy?: string | undefined;
|
|
@@ -55,16 +111,32 @@ export declare const ShadowsocksrNodeConfigValidator: z.ZodObject<{
|
|
|
55
111
|
testUrl?: string | undefined;
|
|
56
112
|
udpRelay?: boolean | undefined;
|
|
57
113
|
}, {
|
|
114
|
+
port: string | number;
|
|
58
115
|
type: NodeTypeEnum.Shadowsocksr;
|
|
59
116
|
password: string;
|
|
60
117
|
nodeName: string;
|
|
61
118
|
hostname: string;
|
|
62
|
-
port: string | number;
|
|
63
119
|
method: string;
|
|
64
120
|
obfs: string;
|
|
65
121
|
obfsparam: string;
|
|
66
122
|
protocol: string;
|
|
67
123
|
protoparam: string;
|
|
124
|
+
surgeConfig?: {
|
|
125
|
+
resolveHostname?: boolean | undefined;
|
|
126
|
+
vmessAEAD?: boolean | undefined;
|
|
127
|
+
} | undefined;
|
|
128
|
+
surfboardConfig?: {
|
|
129
|
+
vmessAEAD?: boolean | undefined;
|
|
130
|
+
} | undefined;
|
|
131
|
+
quantumultXConfig?: {
|
|
132
|
+
vmessAEAD?: boolean | undefined;
|
|
133
|
+
} | undefined;
|
|
134
|
+
clashConfig?: {
|
|
135
|
+
enableTuic?: boolean | undefined;
|
|
136
|
+
enableShadowTls?: boolean | undefined;
|
|
137
|
+
enableHysteria2?: boolean | undefined;
|
|
138
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
139
|
+
} | undefined;
|
|
68
140
|
mptcp?: boolean | undefined;
|
|
69
141
|
tfo?: boolean | undefined;
|
|
70
142
|
underlyingProxy?: string | undefined;
|
|
@@ -1,6 +1,46 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { NodeTypeEnum } from '../types';
|
|
3
3
|
export declare const SnellNodeConfigValidator: z.ZodObject<{
|
|
4
|
+
surgeConfig: z.ZodOptional<z.ZodObject<{
|
|
5
|
+
resolveHostname: z.ZodOptional<z.ZodBoolean>;
|
|
6
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
resolveHostname?: boolean | undefined;
|
|
9
|
+
vmessAEAD?: boolean | undefined;
|
|
10
|
+
}, {
|
|
11
|
+
resolveHostname?: boolean | undefined;
|
|
12
|
+
vmessAEAD?: boolean | undefined;
|
|
13
|
+
}>>;
|
|
14
|
+
surfboardConfig: z.ZodOptional<z.ZodObject<{
|
|
15
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
vmessAEAD?: boolean | undefined;
|
|
18
|
+
}, {
|
|
19
|
+
vmessAEAD?: boolean | undefined;
|
|
20
|
+
}>>;
|
|
21
|
+
quantumultXConfig: z.ZodOptional<z.ZodObject<{
|
|
22
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
vmessAEAD?: boolean | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
vmessAEAD?: boolean | undefined;
|
|
27
|
+
}>>;
|
|
28
|
+
clashConfig: z.ZodOptional<z.ZodObject<{
|
|
29
|
+
enableTuic: z.ZodOptional<z.ZodBoolean>;
|
|
30
|
+
enableShadowTls: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
enableHysteria2: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
clashCore: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"clash">, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>;
|
|
33
|
+
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
enableTuic?: boolean | undefined;
|
|
35
|
+
enableShadowTls?: boolean | undefined;
|
|
36
|
+
enableHysteria2?: boolean | undefined;
|
|
37
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
38
|
+
}, {
|
|
39
|
+
enableTuic?: boolean | undefined;
|
|
40
|
+
enableShadowTls?: boolean | undefined;
|
|
41
|
+
enableHysteria2?: boolean | undefined;
|
|
42
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
43
|
+
}>>;
|
|
4
44
|
mptcp: z.ZodOptional<z.ZodBoolean>;
|
|
5
45
|
tfo: z.ZodOptional<z.ZodBoolean>;
|
|
6
46
|
underlyingProxy: z.ZodOptional<z.ZodString>;
|
|
@@ -30,11 +70,27 @@ export declare const SnellNodeConfigValidator: z.ZodObject<{
|
|
|
30
70
|
reuse: z.ZodOptional<z.ZodBoolean>;
|
|
31
71
|
version: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string | number, string | number>>;
|
|
32
72
|
}, "strip", z.ZodTypeAny, {
|
|
73
|
+
port: string | number;
|
|
33
74
|
type: NodeTypeEnum.Snell;
|
|
34
75
|
nodeName: string;
|
|
35
76
|
hostname: string;
|
|
36
|
-
port: string | number;
|
|
37
77
|
psk: string;
|
|
78
|
+
surgeConfig?: {
|
|
79
|
+
resolveHostname?: boolean | undefined;
|
|
80
|
+
vmessAEAD?: boolean | undefined;
|
|
81
|
+
} | undefined;
|
|
82
|
+
surfboardConfig?: {
|
|
83
|
+
vmessAEAD?: boolean | undefined;
|
|
84
|
+
} | undefined;
|
|
85
|
+
quantumultXConfig?: {
|
|
86
|
+
vmessAEAD?: boolean | undefined;
|
|
87
|
+
} | undefined;
|
|
88
|
+
clashConfig?: {
|
|
89
|
+
enableTuic?: boolean | undefined;
|
|
90
|
+
enableShadowTls?: boolean | undefined;
|
|
91
|
+
enableHysteria2?: boolean | undefined;
|
|
92
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
93
|
+
} | undefined;
|
|
38
94
|
mptcp?: boolean | undefined;
|
|
39
95
|
tfo?: boolean | undefined;
|
|
40
96
|
underlyingProxy?: string | undefined;
|
|
@@ -51,11 +107,27 @@ export declare const SnellNodeConfigValidator: z.ZodObject<{
|
|
|
51
107
|
reuse?: boolean | undefined;
|
|
52
108
|
version?: string | number | undefined;
|
|
53
109
|
}, {
|
|
110
|
+
port: string | number;
|
|
54
111
|
type: NodeTypeEnum.Snell;
|
|
55
112
|
nodeName: string;
|
|
56
113
|
hostname: string;
|
|
57
|
-
port: string | number;
|
|
58
114
|
psk: string;
|
|
115
|
+
surgeConfig?: {
|
|
116
|
+
resolveHostname?: boolean | undefined;
|
|
117
|
+
vmessAEAD?: boolean | undefined;
|
|
118
|
+
} | undefined;
|
|
119
|
+
surfboardConfig?: {
|
|
120
|
+
vmessAEAD?: boolean | undefined;
|
|
121
|
+
} | undefined;
|
|
122
|
+
quantumultXConfig?: {
|
|
123
|
+
vmessAEAD?: boolean | undefined;
|
|
124
|
+
} | undefined;
|
|
125
|
+
clashConfig?: {
|
|
126
|
+
enableTuic?: boolean | undefined;
|
|
127
|
+
enableShadowTls?: boolean | undefined;
|
|
128
|
+
enableHysteria2?: boolean | undefined;
|
|
129
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
130
|
+
} | undefined;
|
|
59
131
|
mptcp?: boolean | undefined;
|
|
60
132
|
tfo?: boolean | undefined;
|
|
61
133
|
underlyingProxy?: string | undefined;
|
|
@@ -1,6 +1,46 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { NodeTypeEnum } from '../types';
|
|
3
3
|
export declare const Socks5NodeConfigValidator: z.ZodObject<{
|
|
4
|
+
surgeConfig: z.ZodOptional<z.ZodObject<{
|
|
5
|
+
resolveHostname: z.ZodOptional<z.ZodBoolean>;
|
|
6
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
resolveHostname?: boolean | undefined;
|
|
9
|
+
vmessAEAD?: boolean | undefined;
|
|
10
|
+
}, {
|
|
11
|
+
resolveHostname?: boolean | undefined;
|
|
12
|
+
vmessAEAD?: boolean | undefined;
|
|
13
|
+
}>>;
|
|
14
|
+
surfboardConfig: z.ZodOptional<z.ZodObject<{
|
|
15
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
vmessAEAD?: boolean | undefined;
|
|
18
|
+
}, {
|
|
19
|
+
vmessAEAD?: boolean | undefined;
|
|
20
|
+
}>>;
|
|
21
|
+
quantumultXConfig: z.ZodOptional<z.ZodObject<{
|
|
22
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
vmessAEAD?: boolean | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
vmessAEAD?: boolean | undefined;
|
|
27
|
+
}>>;
|
|
28
|
+
clashConfig: z.ZodOptional<z.ZodObject<{
|
|
29
|
+
enableTuic: z.ZodOptional<z.ZodBoolean>;
|
|
30
|
+
enableShadowTls: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
enableHysteria2: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
clashCore: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"clash">, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>;
|
|
33
|
+
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
enableTuic?: boolean | undefined;
|
|
35
|
+
enableShadowTls?: boolean | undefined;
|
|
36
|
+
enableHysteria2?: boolean | undefined;
|
|
37
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
38
|
+
}, {
|
|
39
|
+
enableTuic?: boolean | undefined;
|
|
40
|
+
enableShadowTls?: boolean | undefined;
|
|
41
|
+
enableHysteria2?: boolean | undefined;
|
|
42
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
43
|
+
}>>;
|
|
4
44
|
mptcp: z.ZodOptional<z.ZodBoolean>;
|
|
5
45
|
tfo: z.ZodOptional<z.ZodBoolean>;
|
|
6
46
|
underlyingProxy: z.ZodOptional<z.ZodString>;
|
|
@@ -32,10 +72,26 @@ export declare const Socks5NodeConfigValidator: z.ZodObject<{
|
|
|
32
72
|
sni: z.ZodOptional<z.ZodString>;
|
|
33
73
|
clientCert: z.ZodOptional<z.ZodString>;
|
|
34
74
|
}, "strip", z.ZodTypeAny, {
|
|
75
|
+
port: string | number;
|
|
35
76
|
type: NodeTypeEnum.Socks5;
|
|
36
77
|
nodeName: string;
|
|
37
78
|
hostname: string;
|
|
38
|
-
|
|
79
|
+
surgeConfig?: {
|
|
80
|
+
resolveHostname?: boolean | undefined;
|
|
81
|
+
vmessAEAD?: boolean | undefined;
|
|
82
|
+
} | undefined;
|
|
83
|
+
surfboardConfig?: {
|
|
84
|
+
vmessAEAD?: boolean | undefined;
|
|
85
|
+
} | undefined;
|
|
86
|
+
quantumultXConfig?: {
|
|
87
|
+
vmessAEAD?: boolean | undefined;
|
|
88
|
+
} | undefined;
|
|
89
|
+
clashConfig?: {
|
|
90
|
+
enableTuic?: boolean | undefined;
|
|
91
|
+
enableShadowTls?: boolean | undefined;
|
|
92
|
+
enableHysteria2?: boolean | undefined;
|
|
93
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
94
|
+
} | undefined;
|
|
39
95
|
mptcp?: boolean | undefined;
|
|
40
96
|
tfo?: boolean | undefined;
|
|
41
97
|
underlyingProxy?: string | undefined;
|
|
@@ -55,10 +111,26 @@ export declare const Socks5NodeConfigValidator: z.ZodObject<{
|
|
|
55
111
|
sni?: string | undefined;
|
|
56
112
|
clientCert?: string | undefined;
|
|
57
113
|
}, {
|
|
114
|
+
port: string | number;
|
|
58
115
|
type: NodeTypeEnum.Socks5;
|
|
59
116
|
nodeName: string;
|
|
60
117
|
hostname: string;
|
|
61
|
-
|
|
118
|
+
surgeConfig?: {
|
|
119
|
+
resolveHostname?: boolean | undefined;
|
|
120
|
+
vmessAEAD?: boolean | undefined;
|
|
121
|
+
} | undefined;
|
|
122
|
+
surfboardConfig?: {
|
|
123
|
+
vmessAEAD?: boolean | undefined;
|
|
124
|
+
} | undefined;
|
|
125
|
+
quantumultXConfig?: {
|
|
126
|
+
vmessAEAD?: boolean | undefined;
|
|
127
|
+
} | undefined;
|
|
128
|
+
clashConfig?: {
|
|
129
|
+
enableTuic?: boolean | undefined;
|
|
130
|
+
enableShadowTls?: boolean | undefined;
|
|
131
|
+
enableHysteria2?: boolean | undefined;
|
|
132
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
133
|
+
} | undefined;
|
|
62
134
|
mptcp?: boolean | undefined;
|
|
63
135
|
tfo?: boolean | undefined;
|
|
64
136
|
underlyingProxy?: string | undefined;
|
|
@@ -12,6 +12,46 @@ export declare const RemoteSnippetValidator: z.ZodObject<{
|
|
|
12
12
|
url: string;
|
|
13
13
|
surgioSnippet?: boolean | undefined;
|
|
14
14
|
}>;
|
|
15
|
+
export declare const ClashConfigValidator: z.ZodObject<{
|
|
16
|
+
enableTuic: z.ZodOptional<z.ZodBoolean>;
|
|
17
|
+
enableShadowTls: z.ZodOptional<z.ZodBoolean>;
|
|
18
|
+
enableHysteria2: z.ZodOptional<z.ZodBoolean>;
|
|
19
|
+
clashCore: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"clash">, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>;
|
|
20
|
+
}, "strip", z.ZodTypeAny, {
|
|
21
|
+
enableTuic?: boolean | undefined;
|
|
22
|
+
enableShadowTls?: boolean | undefined;
|
|
23
|
+
enableHysteria2?: boolean | undefined;
|
|
24
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
enableTuic?: boolean | undefined;
|
|
27
|
+
enableShadowTls?: boolean | undefined;
|
|
28
|
+
enableHysteria2?: boolean | undefined;
|
|
29
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
30
|
+
}>;
|
|
31
|
+
export declare const SurgeConfigValidator: z.ZodObject<{
|
|
32
|
+
resolveHostname: z.ZodOptional<z.ZodBoolean>;
|
|
33
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
34
|
+
}, "strip", z.ZodTypeAny, {
|
|
35
|
+
resolveHostname?: boolean | undefined;
|
|
36
|
+
vmessAEAD?: boolean | undefined;
|
|
37
|
+
}, {
|
|
38
|
+
resolveHostname?: boolean | undefined;
|
|
39
|
+
vmessAEAD?: boolean | undefined;
|
|
40
|
+
}>;
|
|
41
|
+
export declare const SurfboardConfigValidator: z.ZodObject<{
|
|
42
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
43
|
+
}, "strip", z.ZodTypeAny, {
|
|
44
|
+
vmessAEAD?: boolean | undefined;
|
|
45
|
+
}, {
|
|
46
|
+
vmessAEAD?: boolean | undefined;
|
|
47
|
+
}>;
|
|
48
|
+
export declare const QuantumultXConfigValidator: z.ZodObject<{
|
|
49
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
50
|
+
}, "strip", z.ZodTypeAny, {
|
|
51
|
+
vmessAEAD?: boolean | undefined;
|
|
52
|
+
}, {
|
|
53
|
+
vmessAEAD?: boolean | undefined;
|
|
54
|
+
}>;
|
|
15
55
|
export declare const SurgioConfigValidator: z.ZodObject<{
|
|
16
56
|
artifacts: z.ZodArray<z.ZodObject<{
|
|
17
57
|
name: z.ZodString;
|
|
@@ -171,10 +211,10 @@ export declare const SurgioConfigValidator: z.ZodObject<{
|
|
|
171
211
|
type: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"redis">, z.ZodLiteral<"default">]>>;
|
|
172
212
|
redisUrl: z.ZodOptional<z.ZodString>;
|
|
173
213
|
}, "strip", z.ZodTypeAny, {
|
|
174
|
-
type?: "
|
|
214
|
+
type?: "default" | "redis" | undefined;
|
|
175
215
|
redisUrl?: string | undefined;
|
|
176
216
|
}, {
|
|
177
|
-
type?: "
|
|
217
|
+
type?: "default" | "redis" | undefined;
|
|
178
218
|
redisUrl?: string | undefined;
|
|
179
219
|
}>>;
|
|
180
220
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -244,7 +284,7 @@ export declare const SurgioConfigValidator: z.ZodObject<{
|
|
|
244
284
|
customParams?: Record<string, any> | undefined;
|
|
245
285
|
analytics?: boolean | undefined;
|
|
246
286
|
cache?: {
|
|
247
|
-
type?: "
|
|
287
|
+
type?: "default" | "redis" | undefined;
|
|
248
288
|
redisUrl?: string | undefined;
|
|
249
289
|
} | undefined;
|
|
250
290
|
}, {
|
|
@@ -314,7 +354,7 @@ export declare const SurgioConfigValidator: z.ZodObject<{
|
|
|
314
354
|
customParams?: Record<string, any> | undefined;
|
|
315
355
|
analytics?: boolean | undefined;
|
|
316
356
|
cache?: {
|
|
317
|
-
type?: "
|
|
357
|
+
type?: "default" | "redis" | undefined;
|
|
318
358
|
redisUrl?: string | undefined;
|
|
319
359
|
} | undefined;
|
|
320
360
|
}>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SurgioConfigValidator = exports.RemoteSnippetValidator = void 0;
|
|
3
|
+
exports.SurgioConfigValidator = exports.QuantumultXConfigValidator = exports.SurfboardConfigValidator = exports.SurgeConfigValidator = exports.ClashConfigValidator = exports.RemoteSnippetValidator = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const artifact_1 = require("./artifact");
|
|
6
6
|
const filter_1 = require("./filter");
|
|
@@ -15,6 +15,24 @@ exports.RemoteSnippetValidator = zod_1.z.object({
|
|
|
15
15
|
url: zod_1.z.string().url(),
|
|
16
16
|
surgioSnippet: zod_1.z.oboolean(),
|
|
17
17
|
});
|
|
18
|
+
exports.ClashConfigValidator = zod_1.z.object({
|
|
19
|
+
enableTuic: zod_1.z.oboolean(),
|
|
20
|
+
enableShadowTls: zod_1.z.oboolean(),
|
|
21
|
+
enableHysteria2: zod_1.z.oboolean(),
|
|
22
|
+
clashCore: zod_1.z
|
|
23
|
+
.union([zod_1.z.literal('clash'), zod_1.z.literal('clash.meta'), zod_1.z.literal('stash')])
|
|
24
|
+
.optional(),
|
|
25
|
+
});
|
|
26
|
+
exports.SurgeConfigValidator = zod_1.z.object({
|
|
27
|
+
resolveHostname: zod_1.z.oboolean(),
|
|
28
|
+
vmessAEAD: zod_1.z.oboolean(),
|
|
29
|
+
});
|
|
30
|
+
exports.SurfboardConfigValidator = zod_1.z.object({
|
|
31
|
+
vmessAEAD: zod_1.z.oboolean(),
|
|
32
|
+
});
|
|
33
|
+
exports.QuantumultXConfigValidator = zod_1.z.object({
|
|
34
|
+
vmessAEAD: zod_1.z.oboolean(),
|
|
35
|
+
});
|
|
18
36
|
exports.SurgioConfigValidator = zod_1.z.object({
|
|
19
37
|
artifacts: zod_1.z.array(artifact_1.ArtifactValidator),
|
|
20
38
|
remoteSnippets: zod_1.z.array(exports.RemoteSnippetValidator).optional(),
|
|
@@ -41,36 +59,10 @@ exports.SurgioConfigValidator = zod_1.z.object({
|
|
|
41
59
|
zod_1.z.array(zod_1.z.union([zod_1.z.string(), RegexValidatior])),
|
|
42
60
|
]))
|
|
43
61
|
.optional(),
|
|
44
|
-
surgeConfig:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
})
|
|
49
|
-
.optional(),
|
|
50
|
-
surfboardConfig: zod_1.z
|
|
51
|
-
.object({
|
|
52
|
-
vmessAEAD: zod_1.z.oboolean(),
|
|
53
|
-
})
|
|
54
|
-
.optional(),
|
|
55
|
-
quantumultXConfig: zod_1.z
|
|
56
|
-
.object({
|
|
57
|
-
vmessAEAD: zod_1.z.oboolean(),
|
|
58
|
-
})
|
|
59
|
-
.optional(),
|
|
60
|
-
clashConfig: zod_1.z
|
|
61
|
-
.object({
|
|
62
|
-
enableTuic: zod_1.z.oboolean(),
|
|
63
|
-
enableShadowTls: zod_1.z.oboolean(),
|
|
64
|
-
enableHysteria2: zod_1.z.oboolean(),
|
|
65
|
-
clashCore: zod_1.z
|
|
66
|
-
.union([
|
|
67
|
-
zod_1.z.literal('clash'),
|
|
68
|
-
zod_1.z.literal('clash.meta'),
|
|
69
|
-
zod_1.z.literal('stash'),
|
|
70
|
-
])
|
|
71
|
-
.optional(),
|
|
72
|
-
})
|
|
73
|
-
.optional(),
|
|
62
|
+
surgeConfig: exports.SurgeConfigValidator.optional(),
|
|
63
|
+
surfboardConfig: exports.SurfboardConfigValidator.optional(),
|
|
64
|
+
quantumultXConfig: exports.QuantumultXConfigValidator.optional(),
|
|
65
|
+
clashConfig: exports.ClashConfigValidator.optional(),
|
|
74
66
|
gateway: zod_1.z
|
|
75
67
|
.object({
|
|
76
68
|
accessToken: zod_1.z.ostring(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surgio-config.js","sourceRoot":"","sources":["../../src/validators/surgio-config.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB,yCAA8C;AAC9C,qCAGiB;AAEjB,MAAM,QAAQ,GAAG,CAAC,GAAY,EAAiB,EAAE;IAC/C,OAAO,GAAG,YAAY,MAAM,CAAA;AAC9B,CAAC,CAAA;AACD,MAAM,eAAe,GAAG,OAAC,CAAC,MAAM,CAAS,CAAC,GAAG,EAAE,EAAE;IAC/C,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC,CAAC,CAAA;AAEW,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,aAAa,EAAE,OAAC,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAA;AAEW,QAAA,
|
|
1
|
+
{"version":3,"file":"surgio-config.js","sourceRoot":"","sources":["../../src/validators/surgio-config.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB,yCAA8C;AAC9C,qCAGiB;AAEjB,MAAM,QAAQ,GAAG,CAAC,GAAY,EAAiB,EAAE;IAC/C,OAAO,GAAG,YAAY,MAAM,CAAA;AAC9B,CAAC,CAAA;AACD,MAAM,eAAe,GAAG,OAAC,CAAC,MAAM,CAAS,CAAC,GAAG,EAAE,EAAE;IAC/C,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC,CAAC,CAAA;AAEW,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,aAAa,EAAE,OAAC,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAA;AAEW,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,UAAU,EAAE,OAAC,CAAC,QAAQ,EAAE;IACxB,eAAe,EAAE,OAAC,CAAC,QAAQ,EAAE;IAC7B,eAAe,EAAE,OAAC,CAAC,QAAQ,EAAE;IAC7B,SAAS,EAAE,OAAC;SACT,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;SACxE,QAAQ,EAAE;CACd,CAAC,CAAA;AAEW,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,eAAe,EAAE,OAAC,CAAC,QAAQ,EAAE;IAC7B,SAAS,EAAE,OAAC,CAAC,QAAQ,EAAE;CACxB,CAAC,CAAA;AAEW,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,SAAS,EAAE,OAAC,CAAC,QAAQ,EAAE;CACxB,CAAC,CAAA;AAEW,QAAA,0BAA0B,GAAG,OAAC,CAAC,MAAM,CAAC;IACjD,SAAS,EAAE,OAAC,CAAC,QAAQ,EAAE;CACxB,CAAC,CAAA;AAEW,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAiB,CAAC;IACrC,cAAc,EAAE,OAAC,CAAC,KAAK,CAAC,8BAAsB,CAAC,CAAC,QAAQ,EAAE;IAC1D,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;IACpB,MAAM,EAAE,OAAC;SACN,MAAM,CAAC;QACN,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE;QACnB,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE;QACnB,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE;QACrB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;QAClB,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;QACvB,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE;KAC5B,CAAC;SACD,QAAQ,EAAE;IACb,OAAO,EAAE,OAAC;SACP,MAAM,CAAC;QACN,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;KACtC,CAAC;SACD,QAAQ,EAAE;IACb,KAAK,EAAE,OAAC;SACL,MAAM,CACL,OAAC,CAAC,KAAK,CAAC;QACN,OAAC,CAAC,MAAM,EAAE;QACV,eAAe;QACf,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;KAChD,CAAC,CACH;SACA,QAAQ,EAAE;IACb,WAAW,EAAE,4BAAoB,CAAC,QAAQ,EAAE;IAC5C,eAAe,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IACpD,iBAAiB,EAAE,kCAA0B,CAAC,QAAQ,EAAE;IACxD,WAAW,EAAE,4BAAoB,CAAC,QAAQ,EAAE;IAC5C,OAAO,EAAE,OAAC;SACP,MAAM,CAAC;QACN,WAAW,EAAE,OAAC,CAAC,OAAO,EAAE;QACxB,WAAW,EAAE,OAAC,CAAC,OAAO,EAAE;QACxB,IAAI,EAAE,OAAC,CAAC,QAAQ,EAAE;QAClB,YAAY,EAAE,OAAC,CAAC,OAAO,EAAE;QACzB,eAAe,EAAE,OAAC,CAAC,QAAQ,EAAE;QAC7B,oBAAoB,EAAE,OAAC,CAAC,QAAQ,EAAE;KACnC,CAAC;SACD,QAAQ,EAAE;IACb,aAAa,EAAE,OAAC,CAAC,QAAQ,EAAE;IAC3B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACzC,iBAAiB,EAAE,OAAC,CAAC,OAAO,EAAE;IAC9B,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5C,oBAAoB,EAAE,OAAC,CAAC,OAAO,EAAE;IACjC,aAAa,EAAE,OAAC;SACb,MAAM,CAAC,OAAC,CAAC,KAAK,CAAC,CAAC,gCAAuB,EAAE,sCAA6B,CAAC,CAAC,CAAC;SACzE,QAAQ,EAAE;IACb,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1C,SAAS,EAAE,OAAC,CAAC,QAAQ,EAAE;IACvB,KAAK,EAAE,OAAC;SACL,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QACpE,QAAQ,EAAE,OAAC;aACR,MAAM,EAAE;aACR,KAAK,CAAC,SAAS,CAAC;aAChB,QAAQ,EAAE;KACd,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAA"}
|
|
@@ -1,6 +1,47 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { NodeTypeEnum } from '../types';
|
|
3
3
|
export declare const TrojanNodeConfigValidator: z.ZodObject<{
|
|
4
|
+
port: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string | number, string | number>;
|
|
5
|
+
surgeConfig: z.ZodOptional<z.ZodObject<{
|
|
6
|
+
resolveHostname: z.ZodOptional<z.ZodBoolean>;
|
|
7
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
8
|
+
}, "strip", z.ZodTypeAny, {
|
|
9
|
+
resolveHostname?: boolean | undefined;
|
|
10
|
+
vmessAEAD?: boolean | undefined;
|
|
11
|
+
}, {
|
|
12
|
+
resolveHostname?: boolean | undefined;
|
|
13
|
+
vmessAEAD?: boolean | undefined;
|
|
14
|
+
}>>;
|
|
15
|
+
surfboardConfig: z.ZodOptional<z.ZodObject<{
|
|
16
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
17
|
+
}, "strip", z.ZodTypeAny, {
|
|
18
|
+
vmessAEAD?: boolean | undefined;
|
|
19
|
+
}, {
|
|
20
|
+
vmessAEAD?: boolean | undefined;
|
|
21
|
+
}>>;
|
|
22
|
+
quantumultXConfig: z.ZodOptional<z.ZodObject<{
|
|
23
|
+
vmessAEAD: z.ZodOptional<z.ZodBoolean>;
|
|
24
|
+
}, "strip", z.ZodTypeAny, {
|
|
25
|
+
vmessAEAD?: boolean | undefined;
|
|
26
|
+
}, {
|
|
27
|
+
vmessAEAD?: boolean | undefined;
|
|
28
|
+
}>>;
|
|
29
|
+
clashConfig: z.ZodOptional<z.ZodObject<{
|
|
30
|
+
enableTuic: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
enableShadowTls: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
enableHysteria2: z.ZodOptional<z.ZodBoolean>;
|
|
33
|
+
clashCore: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"clash">, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>;
|
|
34
|
+
}, "strip", z.ZodTypeAny, {
|
|
35
|
+
enableTuic?: boolean | undefined;
|
|
36
|
+
enableShadowTls?: boolean | undefined;
|
|
37
|
+
enableHysteria2?: boolean | undefined;
|
|
38
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
39
|
+
}, {
|
|
40
|
+
enableTuic?: boolean | undefined;
|
|
41
|
+
enableShadowTls?: boolean | undefined;
|
|
42
|
+
enableHysteria2?: boolean | undefined;
|
|
43
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
44
|
+
}>>;
|
|
4
45
|
mptcp: z.ZodOptional<z.ZodBoolean>;
|
|
5
46
|
tfo: z.ZodOptional<z.ZodBoolean>;
|
|
6
47
|
underlyingProxy: z.ZodOptional<z.ZodString>;
|
|
@@ -24,7 +65,6 @@ export declare const TrojanNodeConfigValidator: z.ZodObject<{
|
|
|
24
65
|
}>>;
|
|
25
66
|
testUrl: z.ZodOptional<z.ZodString>;
|
|
26
67
|
hostname: z.ZodString;
|
|
27
|
-
port: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, string | number, string | number>;
|
|
28
68
|
skipCertVerify: z.ZodOptional<z.ZodBoolean>;
|
|
29
69
|
alpn: z.ZodOptional<z.ZodArray<z.ZodString, "atleastone">>;
|
|
30
70
|
serverCertFingerprintSha256: z.ZodOptional<z.ZodString>;
|
|
@@ -35,11 +75,27 @@ export declare const TrojanNodeConfigValidator: z.ZodObject<{
|
|
|
35
75
|
wsPath: z.ZodOptional<z.ZodString>;
|
|
36
76
|
wsHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
37
77
|
}, "strip", z.ZodTypeAny, {
|
|
78
|
+
port: string | number;
|
|
38
79
|
type: NodeTypeEnum.Trojan;
|
|
39
80
|
password: string;
|
|
40
81
|
nodeName: string;
|
|
41
82
|
hostname: string;
|
|
42
|
-
|
|
83
|
+
surgeConfig?: {
|
|
84
|
+
resolveHostname?: boolean | undefined;
|
|
85
|
+
vmessAEAD?: boolean | undefined;
|
|
86
|
+
} | undefined;
|
|
87
|
+
surfboardConfig?: {
|
|
88
|
+
vmessAEAD?: boolean | undefined;
|
|
89
|
+
} | undefined;
|
|
90
|
+
quantumultXConfig?: {
|
|
91
|
+
vmessAEAD?: boolean | undefined;
|
|
92
|
+
} | undefined;
|
|
93
|
+
clashConfig?: {
|
|
94
|
+
enableTuic?: boolean | undefined;
|
|
95
|
+
enableShadowTls?: boolean | undefined;
|
|
96
|
+
enableHysteria2?: boolean | undefined;
|
|
97
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
98
|
+
} | undefined;
|
|
43
99
|
mptcp?: boolean | undefined;
|
|
44
100
|
tfo?: boolean | undefined;
|
|
45
101
|
underlyingProxy?: string | undefined;
|
|
@@ -61,11 +117,27 @@ export declare const TrojanNodeConfigValidator: z.ZodObject<{
|
|
|
61
117
|
wsPath?: string | undefined;
|
|
62
118
|
wsHeaders?: Record<string, string> | undefined;
|
|
63
119
|
}, {
|
|
120
|
+
port: string | number;
|
|
64
121
|
type: NodeTypeEnum.Trojan;
|
|
65
122
|
password: string;
|
|
66
123
|
nodeName: string;
|
|
67
124
|
hostname: string;
|
|
68
|
-
|
|
125
|
+
surgeConfig?: {
|
|
126
|
+
resolveHostname?: boolean | undefined;
|
|
127
|
+
vmessAEAD?: boolean | undefined;
|
|
128
|
+
} | undefined;
|
|
129
|
+
surfboardConfig?: {
|
|
130
|
+
vmessAEAD?: boolean | undefined;
|
|
131
|
+
} | undefined;
|
|
132
|
+
quantumultXConfig?: {
|
|
133
|
+
vmessAEAD?: boolean | undefined;
|
|
134
|
+
} | undefined;
|
|
135
|
+
clashConfig?: {
|
|
136
|
+
enableTuic?: boolean | undefined;
|
|
137
|
+
enableShadowTls?: boolean | undefined;
|
|
138
|
+
enableHysteria2?: boolean | undefined;
|
|
139
|
+
clashCore?: "clash" | "clash.meta" | "stash" | undefined;
|
|
140
|
+
} | undefined;
|
|
69
141
|
mptcp?: boolean | undefined;
|
|
70
142
|
tfo?: boolean | undefined;
|
|
71
143
|
underlyingProxy?: string | undefined;
|