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.
Files changed (47) hide show
  1. package/build/base-command.d.ts +1 -0
  2. package/build/base-command.js +8 -1
  3. package/build/base-command.js.map +1 -1
  4. package/build/commands/check.js +1 -2
  5. package/build/commands/check.js.map +1 -1
  6. package/build/commands/clean-cache.js +1 -2
  7. package/build/commands/clean-cache.js.map +1 -1
  8. package/build/commands/doctor.js +1 -2
  9. package/build/commands/doctor.js.map +1 -1
  10. package/build/commands/generate.js +1 -2
  11. package/build/commands/generate.js.map +1 -1
  12. package/build/commands/lint.js +1 -0
  13. package/build/commands/lint.js.map +1 -1
  14. package/build/commands/new.js +3 -2
  15. package/build/commands/new.js.map +1 -1
  16. package/build/commands/subscriptions.js +1 -2
  17. package/build/commands/subscriptions.js.map +1 -1
  18. package/build/commands/upload.js +1 -3
  19. package/build/commands/upload.js.map +1 -1
  20. package/build/configurables.d.ts +1 -1
  21. package/build/utils/cache.d.ts +1 -1
  22. package/build/utils/loon.js +6 -0
  23. package/build/utils/loon.js.map +1 -1
  24. package/build/utils/remote-snippet.js +1 -0
  25. package/build/utils/remote-snippet.js.map +1 -1
  26. package/build/utils/surge.js +5 -6
  27. package/build/utils/surge.js.map +1 -1
  28. package/build/validators/common.d.ts +146 -2
  29. package/build/validators/common.js +5 -0
  30. package/build/validators/common.js.map +1 -1
  31. package/build/validators/http.d.ts +149 -5
  32. package/build/validators/hysteria2.d.ts +75 -3
  33. package/build/validators/shadowsocks.d.ts +74 -2
  34. package/build/validators/shadowsocksr.d.ts +74 -2
  35. package/build/validators/snell.d.ts +74 -2
  36. package/build/validators/socks5.d.ts +74 -2
  37. package/build/validators/surgio-config.d.ts +44 -4
  38. package/build/validators/surgio-config.js +23 -31
  39. package/build/validators/surgio-config.js.map +1 -1
  40. package/build/validators/trojan.d.ts +75 -3
  41. package/build/validators/tuic.d.ts +300 -12
  42. package/build/validators/vmess.d.ts +74 -2
  43. package/build/validators/wireguard.d.ts +72 -0
  44. package/hygen-template/artifact/new/index.js +2 -2
  45. package/hygen-template/provider/new/index.js +10 -5
  46. package/hygen-template/provider/new/template.ejs.t +2 -2
  47. 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
- port: string | number;
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
- port: string | number;
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?: "redis" | "default" | undefined;
214
+ type?: "default" | "redis" | undefined;
175
215
  redisUrl?: string | undefined;
176
216
  }, {
177
- type?: "redis" | "default" | undefined;
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?: "redis" | "default" | undefined;
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?: "redis" | "default" | undefined;
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: zod_1.z
45
- .object({
46
- resolveHostname: zod_1.z.oboolean(),
47
- vmessAEAD: zod_1.z.oboolean(),
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":"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"}
1
+ {"version":3,"file":"surgio-config.js","sourceRoot":"","sources":["../../src/validators/surgio-config.ts"],"names":[],"mappings":"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"}
@@ -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
- port: string | number;
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
- port: string | number;
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;