@volcengine/pulumi-volcenginecc 0.0.37 → 0.0.38
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/directconnect/gatewayRoute.d.ts +142 -0
- package/directconnect/gatewayRoute.js +96 -0
- package/directconnect/gatewayRoute.js.map +1 -0
- package/directconnect/getGatewayRoute.d.ts +72 -0
- package/directconnect/getGatewayRoute.js +28 -0
- package/directconnect/getGatewayRoute.js.map +1 -0
- package/directconnect/getGatewayRoutes.d.ts +22 -0
- package/directconnect/getGatewayRoutes.js +24 -0
- package/directconnect/getGatewayRoutes.js.map +1 -0
- package/directconnect/getVirtualInterface.d.ts +133 -0
- package/directconnect/getVirtualInterface.js +28 -0
- package/directconnect/getVirtualInterface.js.map +1 -0
- package/directconnect/getVirtualInterfaces.d.ts +22 -0
- package/directconnect/getVirtualInterfaces.js +24 -0
- package/directconnect/getVirtualInterfaces.js.map +1 -0
- package/directconnect/index.d.ts +18 -0
- package/directconnect/index.js +23 -1
- package/directconnect/index.js.map +1 -1
- package/directconnect/virtualInterface.d.ts +336 -0
- package/directconnect/virtualInterface.js +149 -0
- package/directconnect/virtualInterface.js.map +1 -0
- package/gtm/getPool.d.ts +81 -0
- package/gtm/getPool.js +28 -0
- package/gtm/getPool.js.map +1 -0
- package/gtm/getPools.d.ts +22 -0
- package/gtm/getPools.js +24 -0
- package/gtm/getPools.js.map +1 -0
- package/gtm/index.d.ts +9 -0
- package/gtm/index.js +28 -0
- package/gtm/index.js.map +1 -0
- package/gtm/pool.d.ts +154 -0
- package/gtm/pool.js +87 -0
- package/gtm/pool.js.map +1 -0
- package/index.d.ts +2 -1
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/kms/getSecret.d.ts +128 -0
- package/kms/getSecret.js +28 -0
- package/kms/getSecret.js.map +1 -0
- package/kms/getSecrets.d.ts +22 -0
- package/kms/getSecrets.js +24 -0
- package/kms/getSecrets.js.map +1 -0
- package/kms/index.d.ts +9 -0
- package/kms/index.js +12 -1
- package/kms/index.js.map +1 -1
- package/kms/secret.d.ts +289 -0
- package/kms/secret.js +131 -0
- package/kms/secret.js.map +1 -0
- package/package.json +1 -1
- package/tls/alarm.d.ts +215 -0
- package/tls/alarm.js +110 -0
- package/tls/alarm.js.map +1 -0
- package/tls/getAlarm.d.ts +109 -0
- package/tls/getAlarm.js +28 -0
- package/tls/getAlarm.js.map +1 -0
- package/tls/getAlarms.d.ts +22 -0
- package/tls/getAlarms.js +24 -0
- package/tls/getAlarms.js.map +1 -0
- package/tls/index.d.ts +9 -0
- package/tls/index.js +12 -1
- package/tls/index.js.map +1 -1
- package/types/input.d.ts +163 -1
- package/types/output.d.ts +522 -2
- package/vpn/getSslVpnServer.d.ts +109 -0
- package/vpn/getSslVpnServer.js +28 -0
- package/vpn/getSslVpnServer.js.map +1 -0
- package/vpn/getSslVpnServers.d.ts +22 -0
- package/vpn/getSslVpnServers.js +24 -0
- package/vpn/getSslVpnServers.js.map +1 -0
- package/vpn/getVpnGatewayRoute.d.ts +77 -0
- package/vpn/getVpnGatewayRoute.js +28 -0
- package/vpn/getVpnGatewayRoute.js.map +1 -0
- package/vpn/getVpnGatewayRoutes.d.ts +22 -0
- package/vpn/getVpnGatewayRoutes.js +24 -0
- package/vpn/getVpnGatewayRoutes.js.map +1 -0
- package/vpn/index.d.ts +18 -0
- package/vpn/index.js +23 -1
- package/vpn/index.js.map +1 -1
- package/vpn/sslVpnServer.d.ts +263 -0
- package/vpn/sslVpnServer.js +130 -0
- package/vpn/sslVpnServer.js.map +1 -0
- package/vpn/vpnGatewayRoute.d.ts +146 -0
- package/vpn/vpnGatewayRoute.js +98 -0
- package/vpn/vpnGatewayRoute.js.map +1 -0
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../types/input";
|
|
3
|
+
import * as outputs from "../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* The SSL server is a service module in SSL VPN that provides SSL services and handles packet encapsulation and decapsulation.
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as volcenginecc from "@volcengine/pulumi-volcenginecc";
|
|
12
|
+
*
|
|
13
|
+
* const vPNSslVpnServerDemo = new volcenginecc.vpn.SslVpnServer("VPNSslVpnServerDemo", {
|
|
14
|
+
* compress: false,
|
|
15
|
+
* clientIpPool: "192.168.xxx.0/26",
|
|
16
|
+
* description: "修改的SSL服务端描述",
|
|
17
|
+
* projectName: "default",
|
|
18
|
+
* port: 1195,
|
|
19
|
+
* sslVpnServerName: "更新的SSL服务端名称",
|
|
20
|
+
* localSubnets: [
|
|
21
|
+
* "192.168.1.0/24",
|
|
22
|
+
* "192.168.2.0/24",
|
|
23
|
+
* ],
|
|
24
|
+
* vpnGatewayId: "vgw-****",
|
|
25
|
+
* auth: "SHA1",
|
|
26
|
+
* cipher: "AES-128-CBC",
|
|
27
|
+
* clientCertSessionPolicy: "PreemptExisting",
|
|
28
|
+
* protocol: "TCP",
|
|
29
|
+
* tags: [{
|
|
30
|
+
* value: "env",
|
|
31
|
+
* key: "test",
|
|
32
|
+
* }],
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* ## Import
|
|
37
|
+
*
|
|
38
|
+
* ```sh
|
|
39
|
+
* $ pulumi import volcenginecc:vpn/sslVpnServer:SslVpnServer example "ssl_vpn_server_id"
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare class SslVpnServer extends pulumi.CustomResource {
|
|
43
|
+
/**
|
|
44
|
+
* Get an existing SslVpnServer resource's state with the given name, ID, and optional extra
|
|
45
|
+
* properties used to qualify the lookup.
|
|
46
|
+
*
|
|
47
|
+
* @param name The _unique_ name of the resulting resource.
|
|
48
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
49
|
+
* @param state Any extra arguments used during the lookup.
|
|
50
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
51
|
+
*/
|
|
52
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SslVpnServerState, opts?: pulumi.CustomResourceOptions): SslVpnServer;
|
|
53
|
+
/**
|
|
54
|
+
* Returns true if the given object is an instance of SslVpnServer. This is designed to work even
|
|
55
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
56
|
+
*/
|
|
57
|
+
static isInstance(obj: any): obj is SslVpnServer;
|
|
58
|
+
/**
|
|
59
|
+
* Authentication algorithm for the SSL server. SHA1 (default), MD5, None (no encryption).
|
|
60
|
+
*/
|
|
61
|
+
readonly auth: pulumi.Output<string>;
|
|
62
|
+
/**
|
|
63
|
+
* Encryption algorithm for the SSL server. AES-128-CBC (default) AES-192-CBC AES-256-CBC None (no encryption).
|
|
64
|
+
*/
|
|
65
|
+
readonly cipher: pulumi.Output<string>;
|
|
66
|
+
/**
|
|
67
|
+
* Session policy for client certificates. AllowConcurrent: Reuse supported. PreemptExisting: Reuse not supported.
|
|
68
|
+
*/
|
|
69
|
+
readonly clientCertSessionPolicy: pulumi.Output<string>;
|
|
70
|
+
/**
|
|
71
|
+
* SSL client address pool. In SSL VPN, the client address pool is the address range assigned to the client's virtual network interface, not the client's existing internal network segment. Client address pool mask range: /16 to /28. The client address pool must not conflict with the LocalSubnet or IPSec connection routes. The client address pool must not overlap with 100.64.0.0/10, 169.254.0.0/16, 127.0.0.0/8, 224.0.0.0/4, or 240.0.0.0/4. The number of available IPs in the client address pool must be greater than four times the number of SSL connections selected when creating the VPN gateway. For example, if the number of SSL connections is 10, the client address pool must have more than 40 available IPs.
|
|
72
|
+
*/
|
|
73
|
+
readonly clientIpPool: pulumi.Output<string>;
|
|
74
|
+
/**
|
|
75
|
+
* Whether to compress transmitted data. true: Enable compression for communication. false (default): Do not compress communication.
|
|
76
|
+
*/
|
|
77
|
+
readonly compress: pulumi.Output<boolean>;
|
|
78
|
+
/**
|
|
79
|
+
* Time when the SSL server was created.
|
|
80
|
+
*/
|
|
81
|
+
readonly creationTime: pulumi.Output<string>;
|
|
82
|
+
/**
|
|
83
|
+
* Description of the SSL server to be created. Must start with a Chinese character, letter, or number, and can only contain Chinese characters, letters, numbers, periods (.), spaces ( ), underscores (_), hyphens (-), equals signs (=), English commas (,), Chinese commas (,), and Chinese periods (。). Length: 0 to 255 characters. If not specified, defaults to an empty string.
|
|
84
|
+
*/
|
|
85
|
+
readonly description: pulumi.Output<string>;
|
|
86
|
+
/**
|
|
87
|
+
* Indicates whether the current resource is blocked. true: Blocked false: Not blocked.
|
|
88
|
+
*/
|
|
89
|
+
readonly isBlocked: pulumi.Output<boolean>;
|
|
90
|
+
/**
|
|
91
|
+
* Local subnet of the SSL server. The local subnet is the address range accessed by clients through the SSL VPN connection. Note: Up to 5 local subnets can be specified, and they must not conflict with the ClientIpPool.
|
|
92
|
+
*/
|
|
93
|
+
readonly localSubnets: pulumi.Output<string[]>;
|
|
94
|
+
/**
|
|
95
|
+
* Port used by the SSL server. Default: 1194. Valid port range: 1 ~ 65535. The following ports are not supported: 22, 68, 179, 323, 500, 4500.
|
|
96
|
+
*/
|
|
97
|
+
readonly port: pulumi.Output<number>;
|
|
98
|
+
/**
|
|
99
|
+
* Project to which the SSL server belongs. If left blank, the default is default, meaning the created resource belongs to the default project.
|
|
100
|
+
*/
|
|
101
|
+
readonly projectName: pulumi.Output<string>;
|
|
102
|
+
/**
|
|
103
|
+
* Protocol used by the SSL server. Options: TCP (default): TCP protocol. UDP: UDP protocol.
|
|
104
|
+
*/
|
|
105
|
+
readonly protocol: pulumi.Output<string>;
|
|
106
|
+
/**
|
|
107
|
+
* ID of the SSL server.
|
|
108
|
+
*/
|
|
109
|
+
readonly sslVpnServerId: pulumi.Output<string>;
|
|
110
|
+
/**
|
|
111
|
+
* Name of the SSL server to be created. Must start with a Chinese character, letter, or number, and can only contain Chinese characters, letters, numbers, periods (.), underscores (_), and hyphens (-). Length: 1 to 128 characters. If not specified, defaults to the SSL server ID.
|
|
112
|
+
*/
|
|
113
|
+
readonly sslVpnServerName: pulumi.Output<string>;
|
|
114
|
+
/**
|
|
115
|
+
* Status of the SSL server. Available: Available Creating: Creating Pending: In progress Deleting: Deleting.
|
|
116
|
+
*/
|
|
117
|
+
readonly status: pulumi.Output<string>;
|
|
118
|
+
readonly tags: pulumi.Output<outputs.vpn.SslVpnServerTag[]>;
|
|
119
|
+
/**
|
|
120
|
+
* Modify the time of the SSL server.
|
|
121
|
+
*/
|
|
122
|
+
readonly updateTime: pulumi.Output<string>;
|
|
123
|
+
/**
|
|
124
|
+
* ID of the VPN gateway used by the SSL server.
|
|
125
|
+
*/
|
|
126
|
+
readonly vpnGatewayId: pulumi.Output<string>;
|
|
127
|
+
/**
|
|
128
|
+
* Create a SslVpnServer resource with the given unique name, arguments, and options.
|
|
129
|
+
*
|
|
130
|
+
* @param name The _unique_ name of the resource.
|
|
131
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
132
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
133
|
+
*/
|
|
134
|
+
constructor(name: string, args: SslVpnServerArgs, opts?: pulumi.CustomResourceOptions);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Input properties used for looking up and filtering SslVpnServer resources.
|
|
138
|
+
*/
|
|
139
|
+
export interface SslVpnServerState {
|
|
140
|
+
/**
|
|
141
|
+
* Authentication algorithm for the SSL server. SHA1 (default), MD5, None (no encryption).
|
|
142
|
+
*/
|
|
143
|
+
auth?: pulumi.Input<string>;
|
|
144
|
+
/**
|
|
145
|
+
* Encryption algorithm for the SSL server. AES-128-CBC (default) AES-192-CBC AES-256-CBC None (no encryption).
|
|
146
|
+
*/
|
|
147
|
+
cipher?: pulumi.Input<string>;
|
|
148
|
+
/**
|
|
149
|
+
* Session policy for client certificates. AllowConcurrent: Reuse supported. PreemptExisting: Reuse not supported.
|
|
150
|
+
*/
|
|
151
|
+
clientCertSessionPolicy?: pulumi.Input<string>;
|
|
152
|
+
/**
|
|
153
|
+
* SSL client address pool. In SSL VPN, the client address pool is the address range assigned to the client's virtual network interface, not the client's existing internal network segment. Client address pool mask range: /16 to /28. The client address pool must not conflict with the LocalSubnet or IPSec connection routes. The client address pool must not overlap with 100.64.0.0/10, 169.254.0.0/16, 127.0.0.0/8, 224.0.0.0/4, or 240.0.0.0/4. The number of available IPs in the client address pool must be greater than four times the number of SSL connections selected when creating the VPN gateway. For example, if the number of SSL connections is 10, the client address pool must have more than 40 available IPs.
|
|
154
|
+
*/
|
|
155
|
+
clientIpPool?: pulumi.Input<string>;
|
|
156
|
+
/**
|
|
157
|
+
* Whether to compress transmitted data. true: Enable compression for communication. false (default): Do not compress communication.
|
|
158
|
+
*/
|
|
159
|
+
compress?: pulumi.Input<boolean>;
|
|
160
|
+
/**
|
|
161
|
+
* Time when the SSL server was created.
|
|
162
|
+
*/
|
|
163
|
+
creationTime?: pulumi.Input<string>;
|
|
164
|
+
/**
|
|
165
|
+
* Description of the SSL server to be created. Must start with a Chinese character, letter, or number, and can only contain Chinese characters, letters, numbers, periods (.), spaces ( ), underscores (_), hyphens (-), equals signs (=), English commas (,), Chinese commas (,), and Chinese periods (。). Length: 0 to 255 characters. If not specified, defaults to an empty string.
|
|
166
|
+
*/
|
|
167
|
+
description?: pulumi.Input<string>;
|
|
168
|
+
/**
|
|
169
|
+
* Indicates whether the current resource is blocked. true: Blocked false: Not blocked.
|
|
170
|
+
*/
|
|
171
|
+
isBlocked?: pulumi.Input<boolean>;
|
|
172
|
+
/**
|
|
173
|
+
* Local subnet of the SSL server. The local subnet is the address range accessed by clients through the SSL VPN connection. Note: Up to 5 local subnets can be specified, and they must not conflict with the ClientIpPool.
|
|
174
|
+
*/
|
|
175
|
+
localSubnets?: pulumi.Input<pulumi.Input<string>[]>;
|
|
176
|
+
/**
|
|
177
|
+
* Port used by the SSL server. Default: 1194. Valid port range: 1 ~ 65535. The following ports are not supported: 22, 68, 179, 323, 500, 4500.
|
|
178
|
+
*/
|
|
179
|
+
port?: pulumi.Input<number>;
|
|
180
|
+
/**
|
|
181
|
+
* Project to which the SSL server belongs. If left blank, the default is default, meaning the created resource belongs to the default project.
|
|
182
|
+
*/
|
|
183
|
+
projectName?: pulumi.Input<string>;
|
|
184
|
+
/**
|
|
185
|
+
* Protocol used by the SSL server. Options: TCP (default): TCP protocol. UDP: UDP protocol.
|
|
186
|
+
*/
|
|
187
|
+
protocol?: pulumi.Input<string>;
|
|
188
|
+
/**
|
|
189
|
+
* ID of the SSL server.
|
|
190
|
+
*/
|
|
191
|
+
sslVpnServerId?: pulumi.Input<string>;
|
|
192
|
+
/**
|
|
193
|
+
* Name of the SSL server to be created. Must start with a Chinese character, letter, or number, and can only contain Chinese characters, letters, numbers, periods (.), underscores (_), and hyphens (-). Length: 1 to 128 characters. If not specified, defaults to the SSL server ID.
|
|
194
|
+
*/
|
|
195
|
+
sslVpnServerName?: pulumi.Input<string>;
|
|
196
|
+
/**
|
|
197
|
+
* Status of the SSL server. Available: Available Creating: Creating Pending: In progress Deleting: Deleting.
|
|
198
|
+
*/
|
|
199
|
+
status?: pulumi.Input<string>;
|
|
200
|
+
tags?: pulumi.Input<pulumi.Input<inputs.vpn.SslVpnServerTag>[]>;
|
|
201
|
+
/**
|
|
202
|
+
* Modify the time of the SSL server.
|
|
203
|
+
*/
|
|
204
|
+
updateTime?: pulumi.Input<string>;
|
|
205
|
+
/**
|
|
206
|
+
* ID of the VPN gateway used by the SSL server.
|
|
207
|
+
*/
|
|
208
|
+
vpnGatewayId?: pulumi.Input<string>;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* The set of arguments for constructing a SslVpnServer resource.
|
|
212
|
+
*/
|
|
213
|
+
export interface SslVpnServerArgs {
|
|
214
|
+
/**
|
|
215
|
+
* Authentication algorithm for the SSL server. SHA1 (default), MD5, None (no encryption).
|
|
216
|
+
*/
|
|
217
|
+
auth?: pulumi.Input<string>;
|
|
218
|
+
/**
|
|
219
|
+
* Encryption algorithm for the SSL server. AES-128-CBC (default) AES-192-CBC AES-256-CBC None (no encryption).
|
|
220
|
+
*/
|
|
221
|
+
cipher?: pulumi.Input<string>;
|
|
222
|
+
/**
|
|
223
|
+
* Session policy for client certificates. AllowConcurrent: Reuse supported. PreemptExisting: Reuse not supported.
|
|
224
|
+
*/
|
|
225
|
+
clientCertSessionPolicy?: pulumi.Input<string>;
|
|
226
|
+
/**
|
|
227
|
+
* SSL client address pool. In SSL VPN, the client address pool is the address range assigned to the client's virtual network interface, not the client's existing internal network segment. Client address pool mask range: /16 to /28. The client address pool must not conflict with the LocalSubnet or IPSec connection routes. The client address pool must not overlap with 100.64.0.0/10, 169.254.0.0/16, 127.0.0.0/8, 224.0.0.0/4, or 240.0.0.0/4. The number of available IPs in the client address pool must be greater than four times the number of SSL connections selected when creating the VPN gateway. For example, if the number of SSL connections is 10, the client address pool must have more than 40 available IPs.
|
|
228
|
+
*/
|
|
229
|
+
clientIpPool: pulumi.Input<string>;
|
|
230
|
+
/**
|
|
231
|
+
* Whether to compress transmitted data. true: Enable compression for communication. false (default): Do not compress communication.
|
|
232
|
+
*/
|
|
233
|
+
compress?: pulumi.Input<boolean>;
|
|
234
|
+
/**
|
|
235
|
+
* Description of the SSL server to be created. Must start with a Chinese character, letter, or number, and can only contain Chinese characters, letters, numbers, periods (.), spaces ( ), underscores (_), hyphens (-), equals signs (=), English commas (,), Chinese commas (,), and Chinese periods (。). Length: 0 to 255 characters. If not specified, defaults to an empty string.
|
|
236
|
+
*/
|
|
237
|
+
description?: pulumi.Input<string>;
|
|
238
|
+
/**
|
|
239
|
+
* Local subnet of the SSL server. The local subnet is the address range accessed by clients through the SSL VPN connection. Note: Up to 5 local subnets can be specified, and they must not conflict with the ClientIpPool.
|
|
240
|
+
*/
|
|
241
|
+
localSubnets: pulumi.Input<pulumi.Input<string>[]>;
|
|
242
|
+
/**
|
|
243
|
+
* Port used by the SSL server. Default: 1194. Valid port range: 1 ~ 65535. The following ports are not supported: 22, 68, 179, 323, 500, 4500.
|
|
244
|
+
*/
|
|
245
|
+
port?: pulumi.Input<number>;
|
|
246
|
+
/**
|
|
247
|
+
* Project to which the SSL server belongs. If left blank, the default is default, meaning the created resource belongs to the default project.
|
|
248
|
+
*/
|
|
249
|
+
projectName?: pulumi.Input<string>;
|
|
250
|
+
/**
|
|
251
|
+
* Protocol used by the SSL server. Options: TCP (default): TCP protocol. UDP: UDP protocol.
|
|
252
|
+
*/
|
|
253
|
+
protocol?: pulumi.Input<string>;
|
|
254
|
+
/**
|
|
255
|
+
* Name of the SSL server to be created. Must start with a Chinese character, letter, or number, and can only contain Chinese characters, letters, numbers, periods (.), underscores (_), and hyphens (-). Length: 1 to 128 characters. If not specified, defaults to the SSL server ID.
|
|
256
|
+
*/
|
|
257
|
+
sslVpnServerName?: pulumi.Input<string>;
|
|
258
|
+
tags?: pulumi.Input<pulumi.Input<inputs.vpn.SslVpnServerTag>[]>;
|
|
259
|
+
/**
|
|
260
|
+
* ID of the VPN gateway used by the SSL server.
|
|
261
|
+
*/
|
|
262
|
+
vpnGatewayId: pulumi.Input<string>;
|
|
263
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.SslVpnServer = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* The SSL server is a service module in SSL VPN that provides SSL services and handles packet encapsulation and decapsulation.
|
|
10
|
+
*
|
|
11
|
+
* ## Example Usage
|
|
12
|
+
*
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
15
|
+
* import * as volcenginecc from "@volcengine/pulumi-volcenginecc";
|
|
16
|
+
*
|
|
17
|
+
* const vPNSslVpnServerDemo = new volcenginecc.vpn.SslVpnServer("VPNSslVpnServerDemo", {
|
|
18
|
+
* compress: false,
|
|
19
|
+
* clientIpPool: "192.168.xxx.0/26",
|
|
20
|
+
* description: "修改的SSL服务端描述",
|
|
21
|
+
* projectName: "default",
|
|
22
|
+
* port: 1195,
|
|
23
|
+
* sslVpnServerName: "更新的SSL服务端名称",
|
|
24
|
+
* localSubnets: [
|
|
25
|
+
* "192.168.1.0/24",
|
|
26
|
+
* "192.168.2.0/24",
|
|
27
|
+
* ],
|
|
28
|
+
* vpnGatewayId: "vgw-****",
|
|
29
|
+
* auth: "SHA1",
|
|
30
|
+
* cipher: "AES-128-CBC",
|
|
31
|
+
* clientCertSessionPolicy: "PreemptExisting",
|
|
32
|
+
* protocol: "TCP",
|
|
33
|
+
* tags: [{
|
|
34
|
+
* value: "env",
|
|
35
|
+
* key: "test",
|
|
36
|
+
* }],
|
|
37
|
+
* });
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* ## Import
|
|
41
|
+
*
|
|
42
|
+
* ```sh
|
|
43
|
+
* $ pulumi import volcenginecc:vpn/sslVpnServer:SslVpnServer example "ssl_vpn_server_id"
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
class SslVpnServer extends pulumi.CustomResource {
|
|
47
|
+
/**
|
|
48
|
+
* Get an existing SslVpnServer resource's state with the given name, ID, and optional extra
|
|
49
|
+
* properties used to qualify the lookup.
|
|
50
|
+
*
|
|
51
|
+
* @param name The _unique_ name of the resulting resource.
|
|
52
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
53
|
+
* @param state Any extra arguments used during the lookup.
|
|
54
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
55
|
+
*/
|
|
56
|
+
static get(name, id, state, opts) {
|
|
57
|
+
return new SslVpnServer(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Returns true if the given object is an instance of SslVpnServer. This is designed to work even
|
|
61
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
62
|
+
*/
|
|
63
|
+
static isInstance(obj) {
|
|
64
|
+
if (obj === undefined || obj === null) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
return obj['__pulumiType'] === SslVpnServer.__pulumiType;
|
|
68
|
+
}
|
|
69
|
+
constructor(name, argsOrState, opts) {
|
|
70
|
+
let resourceInputs = {};
|
|
71
|
+
opts = opts || {};
|
|
72
|
+
if (opts.id) {
|
|
73
|
+
const state = argsOrState;
|
|
74
|
+
resourceInputs["auth"] = state ? state.auth : undefined;
|
|
75
|
+
resourceInputs["cipher"] = state ? state.cipher : undefined;
|
|
76
|
+
resourceInputs["clientCertSessionPolicy"] = state ? state.clientCertSessionPolicy : undefined;
|
|
77
|
+
resourceInputs["clientIpPool"] = state ? state.clientIpPool : undefined;
|
|
78
|
+
resourceInputs["compress"] = state ? state.compress : undefined;
|
|
79
|
+
resourceInputs["creationTime"] = state ? state.creationTime : undefined;
|
|
80
|
+
resourceInputs["description"] = state ? state.description : undefined;
|
|
81
|
+
resourceInputs["isBlocked"] = state ? state.isBlocked : undefined;
|
|
82
|
+
resourceInputs["localSubnets"] = state ? state.localSubnets : undefined;
|
|
83
|
+
resourceInputs["port"] = state ? state.port : undefined;
|
|
84
|
+
resourceInputs["projectName"] = state ? state.projectName : undefined;
|
|
85
|
+
resourceInputs["protocol"] = state ? state.protocol : undefined;
|
|
86
|
+
resourceInputs["sslVpnServerId"] = state ? state.sslVpnServerId : undefined;
|
|
87
|
+
resourceInputs["sslVpnServerName"] = state ? state.sslVpnServerName : undefined;
|
|
88
|
+
resourceInputs["status"] = state ? state.status : undefined;
|
|
89
|
+
resourceInputs["tags"] = state ? state.tags : undefined;
|
|
90
|
+
resourceInputs["updateTime"] = state ? state.updateTime : undefined;
|
|
91
|
+
resourceInputs["vpnGatewayId"] = state ? state.vpnGatewayId : undefined;
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
const args = argsOrState;
|
|
95
|
+
if ((!args || args.clientIpPool === undefined) && !opts.urn) {
|
|
96
|
+
throw new Error("Missing required property 'clientIpPool'");
|
|
97
|
+
}
|
|
98
|
+
if ((!args || args.localSubnets === undefined) && !opts.urn) {
|
|
99
|
+
throw new Error("Missing required property 'localSubnets'");
|
|
100
|
+
}
|
|
101
|
+
if ((!args || args.vpnGatewayId === undefined) && !opts.urn) {
|
|
102
|
+
throw new Error("Missing required property 'vpnGatewayId'");
|
|
103
|
+
}
|
|
104
|
+
resourceInputs["auth"] = args ? args.auth : undefined;
|
|
105
|
+
resourceInputs["cipher"] = args ? args.cipher : undefined;
|
|
106
|
+
resourceInputs["clientCertSessionPolicy"] = args ? args.clientCertSessionPolicy : undefined;
|
|
107
|
+
resourceInputs["clientIpPool"] = args ? args.clientIpPool : undefined;
|
|
108
|
+
resourceInputs["compress"] = args ? args.compress : undefined;
|
|
109
|
+
resourceInputs["description"] = args ? args.description : undefined;
|
|
110
|
+
resourceInputs["localSubnets"] = args ? args.localSubnets : undefined;
|
|
111
|
+
resourceInputs["port"] = args ? args.port : undefined;
|
|
112
|
+
resourceInputs["projectName"] = args ? args.projectName : undefined;
|
|
113
|
+
resourceInputs["protocol"] = args ? args.protocol : undefined;
|
|
114
|
+
resourceInputs["sslVpnServerName"] = args ? args.sslVpnServerName : undefined;
|
|
115
|
+
resourceInputs["tags"] = args ? args.tags : undefined;
|
|
116
|
+
resourceInputs["vpnGatewayId"] = args ? args.vpnGatewayId : undefined;
|
|
117
|
+
resourceInputs["creationTime"] = undefined /*out*/;
|
|
118
|
+
resourceInputs["isBlocked"] = undefined /*out*/;
|
|
119
|
+
resourceInputs["sslVpnServerId"] = undefined /*out*/;
|
|
120
|
+
resourceInputs["status"] = undefined /*out*/;
|
|
121
|
+
resourceInputs["updateTime"] = undefined /*out*/;
|
|
122
|
+
}
|
|
123
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
124
|
+
super(SslVpnServer.__pulumiType, name, resourceInputs, opts);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
exports.SslVpnServer = SslVpnServer;
|
|
128
|
+
/** @internal */
|
|
129
|
+
SslVpnServer.__pulumiType = 'volcenginecc:vpn/sslVpnServer:SslVpnServer';
|
|
130
|
+
//# sourceMappingURL=sslVpnServer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sslVpnServer.js","sourceRoot":"","sources":["../../vpn/sslVpnServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../types/input";
|
|
3
|
+
import * as outputs from "../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* Add a route entry to the VPN gateway.
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as volcenginecc from "@volcengine/pulumi-volcenginecc";
|
|
12
|
+
*
|
|
13
|
+
* const vpnGatewayRouteDemo = new volcenginecc.vpn.VpnGatewayRoute("VpnGatewayRouteDemo", {
|
|
14
|
+
* destinationCidrBlock: "192.168.0.0/25",
|
|
15
|
+
* nextHopId: "vgc-****",
|
|
16
|
+
* vpnGatewayId: "vgw-****",
|
|
17
|
+
* });
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* ## Import
|
|
21
|
+
*
|
|
22
|
+
* ```sh
|
|
23
|
+
* $ pulumi import volcenginecc:vpn/vpnGatewayRoute:VpnGatewayRoute example "vpn_gateway_route_id"
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class VpnGatewayRoute extends pulumi.CustomResource {
|
|
27
|
+
/**
|
|
28
|
+
* Get an existing VpnGatewayRoute resource's state with the given name, ID, and optional extra
|
|
29
|
+
* properties used to qualify the lookup.
|
|
30
|
+
*
|
|
31
|
+
* @param name The _unique_ name of the resulting resource.
|
|
32
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
33
|
+
* @param state Any extra arguments used during the lookup.
|
|
34
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
35
|
+
*/
|
|
36
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VpnGatewayRouteState, opts?: pulumi.CustomResourceOptions): VpnGatewayRoute;
|
|
37
|
+
/**
|
|
38
|
+
* Returns true if the given object is an instance of VpnGatewayRoute. This is designed to work even
|
|
39
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
40
|
+
*/
|
|
41
|
+
static isInstance(obj: any): obj is VpnGatewayRoute;
|
|
42
|
+
readonly asPaths: pulumi.Output<outputs.vpn.VpnGatewayRouteAsPath[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Time when the VPN gateway route entry was created.
|
|
45
|
+
*/
|
|
46
|
+
readonly creationTime: pulumi.Output<string>;
|
|
47
|
+
/**
|
|
48
|
+
* Destination network segment of the VPN gateway route entry.
|
|
49
|
+
*/
|
|
50
|
+
readonly destinationCidrBlock: pulumi.Output<string>;
|
|
51
|
+
/**
|
|
52
|
+
* ID of the IPsec connection for the route's next hop. You can call DescribeVpnConnections to query the IPsec connection ID.
|
|
53
|
+
*/
|
|
54
|
+
readonly nextHopId: pulumi.Output<string>;
|
|
55
|
+
/**
|
|
56
|
+
* Next hop tunnel ID. This parameter is returned only for VPN gateways in dual-tunnel mode.
|
|
57
|
+
*/
|
|
58
|
+
readonly nextTunnelId: pulumi.Output<string>;
|
|
59
|
+
/**
|
|
60
|
+
* Route type. Static: static route; BGP: BGP route; Cloud: VPC route in the cloud. Note: Route types synchronized from transit routers (TR) are not currently supported for display.
|
|
61
|
+
*/
|
|
62
|
+
readonly routeType: pulumi.Output<string>;
|
|
63
|
+
/**
|
|
64
|
+
* Status of the VPN gateway route entry. Creating: being created; Deleting: being deleted; Pending: being configured; Available: preferred route in effect; Conflicted: not preferred or not in effect. Note: When route prefixes are the same, the route priority is Cloud > Static route > BGP route. Therefore, there may be multiple routes with the same prefix, some with status Available and others with status Conflicted.
|
|
65
|
+
*/
|
|
66
|
+
readonly status: pulumi.Output<string>;
|
|
67
|
+
/**
|
|
68
|
+
* Time when the VPN gateway route entry was modified.
|
|
69
|
+
*/
|
|
70
|
+
readonly updateTime: pulumi.Output<string>;
|
|
71
|
+
/**
|
|
72
|
+
* ID of the VPN gateway for the route entry to be added.
|
|
73
|
+
*/
|
|
74
|
+
readonly vpnGatewayId: pulumi.Output<string>;
|
|
75
|
+
/**
|
|
76
|
+
* ID of the VPN gateway route entry.
|
|
77
|
+
*/
|
|
78
|
+
readonly vpnGatewayRouteId: pulumi.Output<string>;
|
|
79
|
+
/**
|
|
80
|
+
* Create a VpnGatewayRoute resource with the given unique name, arguments, and options.
|
|
81
|
+
*
|
|
82
|
+
* @param name The _unique_ name of the resource.
|
|
83
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
84
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
85
|
+
*/
|
|
86
|
+
constructor(name: string, args: VpnGatewayRouteArgs, opts?: pulumi.CustomResourceOptions);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Input properties used for looking up and filtering VpnGatewayRoute resources.
|
|
90
|
+
*/
|
|
91
|
+
export interface VpnGatewayRouteState {
|
|
92
|
+
asPaths?: pulumi.Input<pulumi.Input<inputs.vpn.VpnGatewayRouteAsPath>[]>;
|
|
93
|
+
/**
|
|
94
|
+
* Time when the VPN gateway route entry was created.
|
|
95
|
+
*/
|
|
96
|
+
creationTime?: pulumi.Input<string>;
|
|
97
|
+
/**
|
|
98
|
+
* Destination network segment of the VPN gateway route entry.
|
|
99
|
+
*/
|
|
100
|
+
destinationCidrBlock?: pulumi.Input<string>;
|
|
101
|
+
/**
|
|
102
|
+
* ID of the IPsec connection for the route's next hop. You can call DescribeVpnConnections to query the IPsec connection ID.
|
|
103
|
+
*/
|
|
104
|
+
nextHopId?: pulumi.Input<string>;
|
|
105
|
+
/**
|
|
106
|
+
* Next hop tunnel ID. This parameter is returned only for VPN gateways in dual-tunnel mode.
|
|
107
|
+
*/
|
|
108
|
+
nextTunnelId?: pulumi.Input<string>;
|
|
109
|
+
/**
|
|
110
|
+
* Route type. Static: static route; BGP: BGP route; Cloud: VPC route in the cloud. Note: Route types synchronized from transit routers (TR) are not currently supported for display.
|
|
111
|
+
*/
|
|
112
|
+
routeType?: pulumi.Input<string>;
|
|
113
|
+
/**
|
|
114
|
+
* Status of the VPN gateway route entry. Creating: being created; Deleting: being deleted; Pending: being configured; Available: preferred route in effect; Conflicted: not preferred or not in effect. Note: When route prefixes are the same, the route priority is Cloud > Static route > BGP route. Therefore, there may be multiple routes with the same prefix, some with status Available and others with status Conflicted.
|
|
115
|
+
*/
|
|
116
|
+
status?: pulumi.Input<string>;
|
|
117
|
+
/**
|
|
118
|
+
* Time when the VPN gateway route entry was modified.
|
|
119
|
+
*/
|
|
120
|
+
updateTime?: pulumi.Input<string>;
|
|
121
|
+
/**
|
|
122
|
+
* ID of the VPN gateway for the route entry to be added.
|
|
123
|
+
*/
|
|
124
|
+
vpnGatewayId?: pulumi.Input<string>;
|
|
125
|
+
/**
|
|
126
|
+
* ID of the VPN gateway route entry.
|
|
127
|
+
*/
|
|
128
|
+
vpnGatewayRouteId?: pulumi.Input<string>;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* The set of arguments for constructing a VpnGatewayRoute resource.
|
|
132
|
+
*/
|
|
133
|
+
export interface VpnGatewayRouteArgs {
|
|
134
|
+
/**
|
|
135
|
+
* Destination network segment of the VPN gateway route entry.
|
|
136
|
+
*/
|
|
137
|
+
destinationCidrBlock: pulumi.Input<string>;
|
|
138
|
+
/**
|
|
139
|
+
* ID of the IPsec connection for the route's next hop. You can call DescribeVpnConnections to query the IPsec connection ID.
|
|
140
|
+
*/
|
|
141
|
+
nextHopId: pulumi.Input<string>;
|
|
142
|
+
/**
|
|
143
|
+
* ID of the VPN gateway for the route entry to be added.
|
|
144
|
+
*/
|
|
145
|
+
vpnGatewayId: pulumi.Input<string>;
|
|
146
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.VpnGatewayRoute = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* Add a route entry to the VPN gateway.
|
|
10
|
+
*
|
|
11
|
+
* ## Example Usage
|
|
12
|
+
*
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
15
|
+
* import * as volcenginecc from "@volcengine/pulumi-volcenginecc";
|
|
16
|
+
*
|
|
17
|
+
* const vpnGatewayRouteDemo = new volcenginecc.vpn.VpnGatewayRoute("VpnGatewayRouteDemo", {
|
|
18
|
+
* destinationCidrBlock: "192.168.0.0/25",
|
|
19
|
+
* nextHopId: "vgc-****",
|
|
20
|
+
* vpnGatewayId: "vgw-****",
|
|
21
|
+
* });
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* ## Import
|
|
25
|
+
*
|
|
26
|
+
* ```sh
|
|
27
|
+
* $ pulumi import volcenginecc:vpn/vpnGatewayRoute:VpnGatewayRoute example "vpn_gateway_route_id"
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
class VpnGatewayRoute extends pulumi.CustomResource {
|
|
31
|
+
/**
|
|
32
|
+
* Get an existing VpnGatewayRoute resource's state with the given name, ID, and optional extra
|
|
33
|
+
* properties used to qualify the lookup.
|
|
34
|
+
*
|
|
35
|
+
* @param name The _unique_ name of the resulting resource.
|
|
36
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
37
|
+
* @param state Any extra arguments used during the lookup.
|
|
38
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
39
|
+
*/
|
|
40
|
+
static get(name, id, state, opts) {
|
|
41
|
+
return new VpnGatewayRoute(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Returns true if the given object is an instance of VpnGatewayRoute. This is designed to work even
|
|
45
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
46
|
+
*/
|
|
47
|
+
static isInstance(obj) {
|
|
48
|
+
if (obj === undefined || obj === null) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
return obj['__pulumiType'] === VpnGatewayRoute.__pulumiType;
|
|
52
|
+
}
|
|
53
|
+
constructor(name, argsOrState, opts) {
|
|
54
|
+
let resourceInputs = {};
|
|
55
|
+
opts = opts || {};
|
|
56
|
+
if (opts.id) {
|
|
57
|
+
const state = argsOrState;
|
|
58
|
+
resourceInputs["asPaths"] = state ? state.asPaths : undefined;
|
|
59
|
+
resourceInputs["creationTime"] = state ? state.creationTime : undefined;
|
|
60
|
+
resourceInputs["destinationCidrBlock"] = state ? state.destinationCidrBlock : undefined;
|
|
61
|
+
resourceInputs["nextHopId"] = state ? state.nextHopId : undefined;
|
|
62
|
+
resourceInputs["nextTunnelId"] = state ? state.nextTunnelId : undefined;
|
|
63
|
+
resourceInputs["routeType"] = state ? state.routeType : undefined;
|
|
64
|
+
resourceInputs["status"] = state ? state.status : undefined;
|
|
65
|
+
resourceInputs["updateTime"] = state ? state.updateTime : undefined;
|
|
66
|
+
resourceInputs["vpnGatewayId"] = state ? state.vpnGatewayId : undefined;
|
|
67
|
+
resourceInputs["vpnGatewayRouteId"] = state ? state.vpnGatewayRouteId : undefined;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
const args = argsOrState;
|
|
71
|
+
if ((!args || args.destinationCidrBlock === undefined) && !opts.urn) {
|
|
72
|
+
throw new Error("Missing required property 'destinationCidrBlock'");
|
|
73
|
+
}
|
|
74
|
+
if ((!args || args.nextHopId === undefined) && !opts.urn) {
|
|
75
|
+
throw new Error("Missing required property 'nextHopId'");
|
|
76
|
+
}
|
|
77
|
+
if ((!args || args.vpnGatewayId === undefined) && !opts.urn) {
|
|
78
|
+
throw new Error("Missing required property 'vpnGatewayId'");
|
|
79
|
+
}
|
|
80
|
+
resourceInputs["destinationCidrBlock"] = args ? args.destinationCidrBlock : undefined;
|
|
81
|
+
resourceInputs["nextHopId"] = args ? args.nextHopId : undefined;
|
|
82
|
+
resourceInputs["vpnGatewayId"] = args ? args.vpnGatewayId : undefined;
|
|
83
|
+
resourceInputs["asPaths"] = undefined /*out*/;
|
|
84
|
+
resourceInputs["creationTime"] = undefined /*out*/;
|
|
85
|
+
resourceInputs["nextTunnelId"] = undefined /*out*/;
|
|
86
|
+
resourceInputs["routeType"] = undefined /*out*/;
|
|
87
|
+
resourceInputs["status"] = undefined /*out*/;
|
|
88
|
+
resourceInputs["updateTime"] = undefined /*out*/;
|
|
89
|
+
resourceInputs["vpnGatewayRouteId"] = undefined /*out*/;
|
|
90
|
+
}
|
|
91
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
92
|
+
super(VpnGatewayRoute.__pulumiType, name, resourceInputs, opts);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.VpnGatewayRoute = VpnGatewayRoute;
|
|
96
|
+
/** @internal */
|
|
97
|
+
VpnGatewayRoute.__pulumiType = 'volcenginecc:vpn/vpnGatewayRoute:VpnGatewayRoute';
|
|
98
|
+
//# sourceMappingURL=vpnGatewayRoute.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vpnGatewayRoute.js","sourceRoot":"","sources":["../../vpn/vpnGatewayRoute.ts"],"names":[],"mappings":"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"}
|