@fjall/generator 0.88.4 → 0.89.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/LICENSE +21 -0
  2. package/dist/src/ast/astCdnParser.d.ts +15 -0
  3. package/dist/src/ast/astCdnParser.js +114 -0
  4. package/dist/src/ast/astCommonParser.d.ts +90 -0
  5. package/dist/src/ast/astCommonParser.js +351 -0
  6. package/dist/src/ast/astComputeParser.d.ts +14 -2
  7. package/dist/src/ast/astComputeParser.js +55 -9
  8. package/dist/src/ast/astDatabaseParser.d.ts +104 -0
  9. package/dist/src/ast/astDatabaseParser.js +275 -0
  10. package/dist/src/ast/astInfrastructureParser.d.ts +23 -277
  11. package/dist/src/ast/astInfrastructureParser.js +83 -1456
  12. package/dist/src/ast/astMessagingParser.d.ts +25 -0
  13. package/dist/src/ast/astMessagingParser.js +78 -0
  14. package/dist/src/ast/astNetworkParser.d.ts +70 -0
  15. package/dist/src/ast/astNetworkParser.js +219 -0
  16. package/dist/src/ast/astPatternParser.d.ts +80 -0
  17. package/dist/src/ast/astPatternParser.js +155 -0
  18. package/dist/src/ast/astStorageParser.d.ts +18 -0
  19. package/dist/src/ast/astStorageParser.js +164 -0
  20. package/dist/src/ast/index.d.ts +1 -0
  21. package/dist/src/ast/index.js +4 -0
  22. package/dist/src/dns/bindParser.d.ts +13 -0
  23. package/dist/src/dns/bindParser.js +224 -0
  24. package/dist/src/dns/bindWriter.d.ts +2 -0
  25. package/dist/src/dns/bindWriter.js +52 -0
  26. package/dist/src/dns/index.d.ts +4 -0
  27. package/dist/src/dns/index.js +4 -0
  28. package/dist/src/dns/infrastructureWriter.d.ts +2 -0
  29. package/dist/src/dns/infrastructureWriter.js +58 -0
  30. package/dist/src/dns/types.d.ts +82 -0
  31. package/dist/src/dns/types.js +52 -0
  32. package/dist/src/generation/common.d.ts +1 -16
  33. package/dist/src/generation/common.js +2 -28
  34. package/dist/src/generation/compute.js +77 -28
  35. package/dist/src/generation/index.d.ts +2 -1
  36. package/dist/src/generation/index.js +3 -1
  37. package/dist/src/generation/messagingConnections.d.ts +33 -0
  38. package/dist/src/generation/messagingConnections.js +73 -0
  39. package/dist/src/generation/storage.d.ts +5 -1
  40. package/dist/src/generation/storage.js +9 -1
  41. package/dist/src/generation/storageConnections.d.ts +3 -3
  42. package/dist/src/generation/storageConnections.js +8 -4
  43. package/dist/src/index.d.ts +1 -0
  44. package/dist/src/index.js +2 -0
  45. package/dist/src/planning/resourcePlanning.js +0 -2
  46. package/dist/src/presets/tierTypes.d.ts +4 -1
  47. package/dist/src/schemas/applicationSchemas.d.ts +854 -0
  48. package/dist/src/schemas/applicationSchemas.js +80 -0
  49. package/dist/src/schemas/baseSchemas.d.ts +206 -0
  50. package/dist/src/schemas/baseSchemas.js +248 -0
  51. package/dist/src/schemas/cdnSchemas.d.ts +61 -0
  52. package/dist/src/schemas/cdnSchemas.js +62 -0
  53. package/dist/src/schemas/computeSchemas.d.ts +723 -0
  54. package/dist/src/schemas/computeSchemas.js +727 -0
  55. package/dist/src/schemas/constants.d.ts +12 -8
  56. package/dist/src/schemas/constants.js +14 -4
  57. package/dist/src/schemas/databaseSchemas.d.ts +638 -0
  58. package/dist/src/schemas/databaseSchemas.js +366 -0
  59. package/dist/src/schemas/messagingSchemas.d.ts +20 -0
  60. package/dist/src/schemas/messagingSchemas.js +29 -0
  61. package/dist/src/schemas/networkSchemas.d.ts +246 -0
  62. package/dist/src/schemas/networkSchemas.js +125 -0
  63. package/dist/src/schemas/patternSchemas.d.ts +708 -0
  64. package/dist/src/schemas/patternSchemas.js +294 -0
  65. package/dist/src/schemas/resourceSchemas.d.ts +24 -3530
  66. package/dist/src/schemas/resourceSchemas.js +24 -2011
  67. package/dist/src/schemas/storageSchemas.d.ts +93 -0
  68. package/dist/src/schemas/storageSchemas.js +119 -0
  69. package/dist/src/util/errorUtils.d.ts +1 -2
  70. package/dist/src/util/errorUtils.js +1 -15
  71. package/dist/src/validation/patterns.d.ts +9 -0
  72. package/dist/src/validation/patterns.js +9 -0
  73. package/dist/src/version.d.ts +1 -1
  74. package/dist/src/version.js +1 -1
  75. package/package.json +5 -3
@@ -0,0 +1,854 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Application resource plan schema.
4
+ * Represents the complete plan for an application's infrastructure.
5
+ * Must be defined after ComputeResourcePlanSchema due to declaration order.
6
+ */
7
+ export declare const ApplicationResourcePlanSchema: z.ZodObject<{
8
+ appName: z.ZodString;
9
+ type: z.ZodEnum<{
10
+ custom: "custom";
11
+ standard: "standard";
12
+ resilient: "resilient";
13
+ enterprise: "enterprise";
14
+ tinkerer: "tinkerer";
15
+ lightweight: "lightweight";
16
+ }>;
17
+ pattern: z.ZodOptional<z.ZodEnum<{
18
+ payload: "payload";
19
+ nextjs: "nextjs";
20
+ }>>;
21
+ patternConfig: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
22
+ type: z.ZodLiteral<"payload">;
23
+ name: z.ZodString;
24
+ domain: z.ZodOptional<z.ZodString>;
25
+ database: z.ZodOptional<z.ZodObject<{
26
+ type: z.ZodOptional<z.ZodEnum<{
27
+ Aurora: "Aurora";
28
+ Instance: "Instance";
29
+ }>>;
30
+ databaseName: z.ZodOptional<z.ZodString>;
31
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
32
+ postgresql: "postgresql";
33
+ mysql: "mysql";
34
+ }>>;
35
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
36
+ backupRetention: z.ZodOptional<z.ZodNumber>;
37
+ port: z.ZodOptional<z.ZodNumber>;
38
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
39
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
40
+ instanceType: z.ZodOptional<z.ZodString>;
41
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
42
+ multiAz: z.ZodOptional<z.ZodBoolean>;
43
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
44
+ instanceType: z.ZodOptional<z.ZodString>;
45
+ availabilityZone: z.ZodOptional<z.ZodString>;
46
+ }, z.core.$strict>]>>;
47
+ writer: z.ZodOptional<z.ZodObject<{
48
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
49
+ identifierSuffix: z.ZodOptional<z.ZodString>;
50
+ availabilityZone: z.ZodOptional<z.ZodString>;
51
+ }, z.core.$strict>>;
52
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
53
+ count: z.ZodOptional<z.ZodNumber>;
54
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
55
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
56
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
57
+ identifierSuffix: z.ZodOptional<z.ZodString>;
58
+ availabilityZone: z.ZodOptional<z.ZodString>;
59
+ }, z.core.$strict>>>;
60
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
61
+ }, z.core.$strict>]>>;
62
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
63
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
64
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
65
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
66
+ mode: z.ZodOptional<z.ZodEnum<{
67
+ standard: "standard";
68
+ advanced: "advanced";
69
+ }>>;
70
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
71
+ awsManaged: z.ZodLiteral<true>;
72
+ }, z.core.$strict>, z.ZodObject<{
73
+ useCMK: z.ZodLiteral<true>;
74
+ }, z.core.$strict>]>>;
75
+ }, z.core.$strict>]>>;
76
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
77
+ maxConnections: z.ZodOptional<z.ZodNumber>;
78
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
79
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
80
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
81
+ }, z.core.$strict>]>>;
82
+ credentials: z.ZodOptional<z.ZodObject<{
83
+ username: z.ZodOptional<z.ZodString>;
84
+ secretRotation: z.ZodOptional<z.ZodObject<{
85
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
86
+ }, z.core.$strict>>;
87
+ }, z.core.$strict>>;
88
+ encryption: z.ZodOptional<z.ZodObject<{
89
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
90
+ awsManaged: z.ZodLiteral<true>;
91
+ }, z.core.$strict>, z.ZodObject<{
92
+ useCMK: z.ZodLiteral<true>;
93
+ }, z.core.$strict>]>>;
94
+ }, z.core.$strict>>;
95
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
96
+ snapshotUsername: z.ZodOptional<z.ZodString>;
97
+ }, z.core.$strict>>;
98
+ compute: z.ZodOptional<z.ZodObject<{
99
+ server: z.ZodOptional<z.ZodObject<{
100
+ memorySize: z.ZodOptional<z.ZodNumber>;
101
+ timeout: z.ZodOptional<z.ZodNumber>;
102
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
103
+ }, z.core.$strict>>;
104
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
105
+ memorySize: z.ZodOptional<z.ZodNumber>;
106
+ timeout: z.ZodOptional<z.ZodNumber>;
107
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
108
+ }, z.core.$strict>>;
109
+ revalidation: z.ZodOptional<z.ZodObject<{
110
+ memorySize: z.ZodOptional<z.ZodNumber>;
111
+ timeout: z.ZodOptional<z.ZodNumber>;
112
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
113
+ }, z.core.$strict>>;
114
+ }, z.core.$strict>>;
115
+ storage: z.ZodOptional<z.ZodObject<{
116
+ assets: z.ZodOptional<z.ZodObject<{
117
+ versioned: z.ZodOptional<z.ZodBoolean>;
118
+ }, z.core.$strict>>;
119
+ cache: z.ZodOptional<z.ZodObject<{
120
+ versioned: z.ZodOptional<z.ZodBoolean>;
121
+ }, z.core.$strict>>;
122
+ media: z.ZodOptional<z.ZodObject<{
123
+ versioned: z.ZodOptional<z.ZodBoolean>;
124
+ }, z.core.$strict>>;
125
+ }, z.core.$strict>>;
126
+ messaging: z.ZodOptional<z.ZodObject<{
127
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
128
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
129
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
130
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
131
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
132
+ enabled: z.ZodOptional<z.ZodBoolean>;
133
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
134
+ }, z.core.$strict>]>>;
135
+ }, z.core.$strict>>;
136
+ }, z.core.$strict>>;
137
+ cdn: z.ZodOptional<z.ZodObject<{
138
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
139
+ certificateArn: z.ZodOptional<z.ZodString>;
140
+ }, z.core.$strict>>;
141
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
142
+ }, z.core.$strict>, z.ZodObject<{
143
+ type: z.ZodLiteral<"nextjs">;
144
+ name: z.ZodString;
145
+ domain: z.ZodOptional<z.ZodString>;
146
+ database: z.ZodOptional<z.ZodObject<{
147
+ type: z.ZodOptional<z.ZodEnum<{
148
+ Aurora: "Aurora";
149
+ Instance: "Instance";
150
+ }>>;
151
+ databaseName: z.ZodOptional<z.ZodString>;
152
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
153
+ postgresql: "postgresql";
154
+ mysql: "mysql";
155
+ }>>;
156
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
157
+ backupRetention: z.ZodOptional<z.ZodNumber>;
158
+ port: z.ZodOptional<z.ZodNumber>;
159
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
160
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
161
+ instanceType: z.ZodOptional<z.ZodString>;
162
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
163
+ multiAz: z.ZodOptional<z.ZodBoolean>;
164
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
165
+ instanceType: z.ZodOptional<z.ZodString>;
166
+ availabilityZone: z.ZodOptional<z.ZodString>;
167
+ }, z.core.$strict>]>>;
168
+ writer: z.ZodOptional<z.ZodObject<{
169
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
170
+ identifierSuffix: z.ZodOptional<z.ZodString>;
171
+ availabilityZone: z.ZodOptional<z.ZodString>;
172
+ }, z.core.$strict>>;
173
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
174
+ count: z.ZodOptional<z.ZodNumber>;
175
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
176
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
177
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
178
+ identifierSuffix: z.ZodOptional<z.ZodString>;
179
+ availabilityZone: z.ZodOptional<z.ZodString>;
180
+ }, z.core.$strict>>>;
181
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
182
+ }, z.core.$strict>]>>;
183
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
184
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
185
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
186
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
187
+ mode: z.ZodOptional<z.ZodEnum<{
188
+ standard: "standard";
189
+ advanced: "advanced";
190
+ }>>;
191
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
192
+ awsManaged: z.ZodLiteral<true>;
193
+ }, z.core.$strict>, z.ZodObject<{
194
+ useCMK: z.ZodLiteral<true>;
195
+ }, z.core.$strict>]>>;
196
+ }, z.core.$strict>]>>;
197
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
198
+ maxConnections: z.ZodOptional<z.ZodNumber>;
199
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
200
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
201
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
202
+ }, z.core.$strict>]>>;
203
+ credentials: z.ZodOptional<z.ZodObject<{
204
+ username: z.ZodOptional<z.ZodString>;
205
+ secretRotation: z.ZodOptional<z.ZodObject<{
206
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
207
+ }, z.core.$strict>>;
208
+ }, z.core.$strict>>;
209
+ encryption: z.ZodOptional<z.ZodObject<{
210
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
211
+ awsManaged: z.ZodLiteral<true>;
212
+ }, z.core.$strict>, z.ZodObject<{
213
+ useCMK: z.ZodLiteral<true>;
214
+ }, z.core.$strict>]>>;
215
+ }, z.core.$strict>>;
216
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
217
+ snapshotUsername: z.ZodOptional<z.ZodString>;
218
+ }, z.core.$strict>>;
219
+ compute: z.ZodOptional<z.ZodObject<{
220
+ server: z.ZodOptional<z.ZodObject<{
221
+ memorySize: z.ZodOptional<z.ZodNumber>;
222
+ timeout: z.ZodOptional<z.ZodNumber>;
223
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
224
+ }, z.core.$strict>>;
225
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
226
+ memorySize: z.ZodOptional<z.ZodNumber>;
227
+ timeout: z.ZodOptional<z.ZodNumber>;
228
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
229
+ }, z.core.$strict>>;
230
+ revalidation: z.ZodOptional<z.ZodObject<{
231
+ memorySize: z.ZodOptional<z.ZodNumber>;
232
+ timeout: z.ZodOptional<z.ZodNumber>;
233
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
234
+ }, z.core.$strict>>;
235
+ }, z.core.$strict>>;
236
+ storage: z.ZodOptional<z.ZodObject<{
237
+ assets: z.ZodOptional<z.ZodObject<{
238
+ versioned: z.ZodOptional<z.ZodBoolean>;
239
+ }, z.core.$strict>>;
240
+ cache: z.ZodOptional<z.ZodObject<{
241
+ versioned: z.ZodOptional<z.ZodBoolean>;
242
+ }, z.core.$strict>>;
243
+ media: z.ZodOptional<z.ZodObject<{
244
+ versioned: z.ZodOptional<z.ZodBoolean>;
245
+ }, z.core.$strict>>;
246
+ }, z.core.$strict>>;
247
+ messaging: z.ZodOptional<z.ZodObject<{
248
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
249
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
250
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
251
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
252
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
253
+ enabled: z.ZodOptional<z.ZodBoolean>;
254
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
255
+ }, z.core.$strict>]>>;
256
+ }, z.core.$strict>>;
257
+ }, z.core.$strict>>;
258
+ cdn: z.ZodOptional<z.ZodObject<{
259
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
260
+ certificateArn: z.ZodOptional<z.ZodString>;
261
+ }, z.core.$strict>>;
262
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
263
+ }, z.core.$strict>], "type">>;
264
+ owner: z.ZodOptional<z.ZodString>;
265
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
266
+ vpcId: z.ZodOptional<z.ZodString>;
267
+ network: z.ZodOptional<z.ZodObject<{
268
+ maxAzs: z.ZodOptional<z.ZodNumber>;
269
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
270
+ count: z.ZodOptional<z.ZodNumber>;
271
+ }, z.core.$strict>]>>;
272
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
273
+ destination: z.ZodOptional<z.ZodEnum<{
274
+ cloudwatch: "cloudwatch";
275
+ s3: "s3";
276
+ }>>;
277
+ retentionDays: z.ZodOptional<z.ZodNumber>;
278
+ trafficType: z.ZodOptional<z.ZodEnum<{
279
+ ALL: "ALL";
280
+ ACCEPT: "ACCEPT";
281
+ REJECT: "REJECT";
282
+ }>>;
283
+ }, z.core.$strict>]>>;
284
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
285
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
286
+ s3: z.ZodOptional<z.ZodBoolean>;
287
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
288
+ }, z.core.$strict>]>>;
289
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
290
+ ecr: z.ZodOptional<z.ZodBoolean>;
291
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
292
+ kms: z.ZodOptional<z.ZodBoolean>;
293
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
294
+ ssm: z.ZodOptional<z.ZodBoolean>;
295
+ sts: z.ZodOptional<z.ZodBoolean>;
296
+ }, z.core.$strict>]>>;
297
+ }, z.core.$strict>]>>;
298
+ cidrMask: z.ZodOptional<z.ZodNumber>;
299
+ }, z.core.$strict>>;
300
+ backup: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
301
+ tier: z.ZodEnum<{
302
+ standard: "standard";
303
+ resilient: "resilient";
304
+ enterprise: "enterprise";
305
+ }>;
306
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
307
+ tunnel: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
308
+ instanceType: z.ZodOptional<z.ZodString>;
309
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
310
+ additionalNetworks: z.ZodOptional<z.ZodArray<z.ZodObject<{
311
+ maxAzs: z.ZodOptional<z.ZodNumber>;
312
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
313
+ count: z.ZodOptional<z.ZodNumber>;
314
+ }, z.core.$strict>]>>;
315
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
316
+ destination: z.ZodOptional<z.ZodEnum<{
317
+ cloudwatch: "cloudwatch";
318
+ s3: "s3";
319
+ }>>;
320
+ retentionDays: z.ZodOptional<z.ZodNumber>;
321
+ trafficType: z.ZodOptional<z.ZodEnum<{
322
+ ALL: "ALL";
323
+ ACCEPT: "ACCEPT";
324
+ REJECT: "REJECT";
325
+ }>>;
326
+ }, z.core.$strict>]>>;
327
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
328
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
329
+ s3: z.ZodOptional<z.ZodBoolean>;
330
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
331
+ }, z.core.$strict>]>>;
332
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
333
+ ecr: z.ZodOptional<z.ZodBoolean>;
334
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
335
+ kms: z.ZodOptional<z.ZodBoolean>;
336
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
337
+ ssm: z.ZodOptional<z.ZodBoolean>;
338
+ sts: z.ZodOptional<z.ZodBoolean>;
339
+ }, z.core.$strict>]>>;
340
+ }, z.core.$strict>]>>;
341
+ cidrMask: z.ZodOptional<z.ZodNumber>;
342
+ name: z.ZodString;
343
+ }, z.core.$strict>>>;
344
+ database: z.ZodArray<z.ZodObject<{
345
+ name: z.ZodString;
346
+ type: z.ZodEnum<{
347
+ Aurora: "Aurora";
348
+ Instance: "Instance";
349
+ GlobalAurora: "GlobalAurora";
350
+ }>;
351
+ databaseName: z.ZodString;
352
+ instanceType: z.ZodOptional<z.ZodString>;
353
+ multiAz: z.ZodOptional<z.ZodBoolean>;
354
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
355
+ enableSecretRotation: z.ZodOptional<z.ZodBoolean>;
356
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
357
+ mode: z.ZodOptional<z.ZodEnum<{
358
+ standard: "standard";
359
+ advanced: "advanced";
360
+ }>>;
361
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
362
+ awsManaged: z.ZodLiteral<true>;
363
+ }, z.core.$strict>, z.ZodObject<{
364
+ useCMK: z.ZodLiteral<true>;
365
+ }, z.core.$strict>]>>;
366
+ }, z.core.$strict>]>>;
367
+ port: z.ZodOptional<z.ZodNumber>;
368
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
369
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
370
+ maxConnections: z.ZodOptional<z.ZodNumber>;
371
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
372
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
373
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
374
+ }, z.core.$strict>]>>;
375
+ credentials: z.ZodOptional<z.ZodObject<{
376
+ username: z.ZodOptional<z.ZodString>;
377
+ secretRotation: z.ZodOptional<z.ZodObject<{
378
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
379
+ }, z.core.$strict>>;
380
+ }, z.core.$strict>>;
381
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
382
+ instanceType: z.ZodOptional<z.ZodString>;
383
+ availabilityZone: z.ZodOptional<z.ZodString>;
384
+ }, z.core.$strict>]>>;
385
+ encryption: z.ZodOptional<z.ZodObject<{
386
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
387
+ awsManaged: z.ZodLiteral<true>;
388
+ }, z.core.$strict>, z.ZodObject<{
389
+ useCMK: z.ZodLiteral<true>;
390
+ }, z.core.$strict>]>>;
391
+ }, z.core.$strict>>;
392
+ writer: z.ZodOptional<z.ZodObject<{
393
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
394
+ identifierSuffix: z.ZodOptional<z.ZodString>;
395
+ availabilityZone: z.ZodOptional<z.ZodString>;
396
+ }, z.core.$strict>>;
397
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
398
+ count: z.ZodOptional<z.ZodNumber>;
399
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
400
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
401
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
402
+ identifierSuffix: z.ZodOptional<z.ZodString>;
403
+ availabilityZone: z.ZodOptional<z.ZodString>;
404
+ }, z.core.$strict>>>;
405
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
406
+ }, z.core.$strict>]>>;
407
+ backupRetention: z.ZodOptional<z.ZodNumber>;
408
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
409
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
410
+ primaryRegion: z.ZodOptional<z.ZodString>;
411
+ secondaryRegions: z.ZodOptional<z.ZodArray<z.ZodString>>;
412
+ globalClusterIdentifier: z.ZodOptional<z.ZodString>;
413
+ enableGlobalWriteForwarding: z.ZodOptional<z.ZodBoolean>;
414
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
415
+ snapshotUsername: z.ZodOptional<z.ZodString>;
416
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
417
+ postgresql: "postgresql";
418
+ mysql: "mysql";
419
+ }>>;
420
+ engineExpression: z.ZodOptional<z.ZodString>;
421
+ variableName: z.ZodOptional<z.ZodString>;
422
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
423
+ key: z.ZodString;
424
+ sourceText: z.ZodString;
425
+ }, z.core.$strict>>>;
426
+ }, z.core.$strict>>;
427
+ s3: z.ZodArray<z.ZodObject<{
428
+ name: z.ZodString;
429
+ bucketName: z.ZodOptional<z.ZodString>;
430
+ publicReadAccess: z.ZodOptional<z.ZodBoolean>;
431
+ websiteHosting: z.ZodOptional<z.ZodObject<{
432
+ indexDocument: z.ZodString;
433
+ errorDocument: z.ZodOptional<z.ZodString>;
434
+ }, z.core.$strict>>;
435
+ backupVaultTier: z.ZodOptional<z.ZodEnum<{
436
+ standard: "standard";
437
+ resilient: "resilient";
438
+ enterprise: "enterprise";
439
+ }>>;
440
+ versioned: z.ZodOptional<z.ZodBoolean>;
441
+ encryption: z.ZodOptional<z.ZodEnum<{
442
+ KMS: "KMS";
443
+ AES256: "AES256";
444
+ }>>;
445
+ kmsKeyArn: z.ZodOptional<z.ZodString>;
446
+ cors: z.ZodOptional<z.ZodArray<z.ZodObject<{
447
+ allowedOrigins: z.ZodArray<z.ZodString>;
448
+ allowedMethods: z.ZodArray<z.ZodString>;
449
+ allowedHeaders: z.ZodOptional<z.ZodArray<z.ZodString>>;
450
+ exposedHeaders: z.ZodOptional<z.ZodArray<z.ZodString>>;
451
+ maxAge: z.ZodOptional<z.ZodNumber>;
452
+ }, z.core.$strict>>>;
453
+ deployment: z.ZodOptional<z.ZodObject<{
454
+ source: z.ZodString;
455
+ prune: z.ZodOptional<z.ZodBoolean>;
456
+ cacheControl: z.ZodOptional<z.ZodObject<{
457
+ maxAge: z.ZodOptional<z.ZodNumber>;
458
+ immutable: z.ZodOptional<z.ZodBoolean>;
459
+ }, z.core.$strict>>;
460
+ }, z.core.$strict>>;
461
+ stackPlacement: z.ZodOptional<z.ZodEnum<{
462
+ storage: "storage";
463
+ compute: "compute";
464
+ cdn: "cdn";
465
+ }>>;
466
+ variableName: z.ZodOptional<z.ZodString>;
467
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
468
+ key: z.ZodString;
469
+ sourceText: z.ZodString;
470
+ }, z.core.$strict>>>;
471
+ }, z.core.$strict>>;
472
+ compute: z.ZodArray<z.ZodObject<{
473
+ name: z.ZodString;
474
+ type: z.ZodEnum<{
475
+ ecs: "ecs";
476
+ lambda: "lambda";
477
+ ec2: "ec2";
478
+ }>;
479
+ needsConnection: z.ZodBoolean;
480
+ connectedDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
481
+ connectedStorage: z.ZodOptional<z.ZodArray<z.ZodString>>;
482
+ connectedMessaging: z.ZodOptional<z.ZodArray<z.ZodString>>;
483
+ cluster: z.ZodOptional<z.ZodObject<{
484
+ domain: z.ZodOptional<z.ZodString>;
485
+ loadBalancer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodLiteral<"public">, z.ZodLiteral<"internal">]>>;
486
+ directAccess: z.ZodOptional<z.ZodBoolean>;
487
+ }, z.core.$strict>>;
488
+ services: z.ZodOptional<z.ZodArray<z.ZodObject<{
489
+ name: z.ZodString;
490
+ dockerfilePath: z.ZodOptional<z.ZodString>;
491
+ dockerTarget: z.ZodOptional<z.ZodString>;
492
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
493
+ needsStorageConnection: z.ZodOptional<z.ZodBoolean>;
494
+ needsMessagingConnection: z.ZodOptional<z.ZodBoolean>;
495
+ image: z.ZodOptional<z.ZodString>;
496
+ containers: z.ZodOptional<z.ZodArray<z.ZodObject<{
497
+ name: z.ZodOptional<z.ZodString>;
498
+ image: z.ZodOptional<z.ZodString>;
499
+ port: z.ZodOptional<z.ZodNumber>;
500
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
501
+ __identifier: z.ZodString;
502
+ }, z.core.$strict>, z.ZodObject<{
503
+ __expression: z.ZodString;
504
+ }, z.core.$strict>, z.ZodObject<{
505
+ __call: z.ZodString;
506
+ }, z.core.$strict>]>]>>>;
507
+ secretsImport: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
508
+ id: z.ZodString;
509
+ name: z.ZodString;
510
+ field: z.ZodOptional<z.ZodString>;
511
+ }, z.core.$strict>>>;
512
+ command: z.ZodOptional<z.ZodArray<z.ZodString>>;
513
+ entryPoint: z.ZodOptional<z.ZodArray<z.ZodString>>;
514
+ essential: z.ZodOptional<z.ZodBoolean>;
515
+ healthCheck: z.ZodOptional<z.ZodObject<{
516
+ command: z.ZodArray<z.ZodString>;
517
+ interval: z.ZodOptional<z.ZodNumber>;
518
+ timeout: z.ZodOptional<z.ZodNumber>;
519
+ retries: z.ZodOptional<z.ZodNumber>;
520
+ startPeriod: z.ZodOptional<z.ZodNumber>;
521
+ }, z.core.$strict>>;
522
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
523
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
524
+ key: z.ZodString;
525
+ sourceText: z.ZodString;
526
+ }, z.core.$strict>>>;
527
+ }, z.core.$strict>>>;
528
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
529
+ path: z.ZodOptional<z.ZodString>;
530
+ host: z.ZodOptional<z.ZodString>;
531
+ priority: z.ZodOptional<z.ZodNumber>;
532
+ healthCheckPath: z.ZodOptional<z.ZodString>;
533
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
534
+ path: z.ZodOptional<z.ZodString>;
535
+ host: z.ZodOptional<z.ZodString>;
536
+ priority: z.ZodOptional<z.ZodNumber>;
537
+ healthCheckPath: z.ZodOptional<z.ZodString>;
538
+ }, z.core.$strict>>]>>;
539
+ cpu: z.ZodOptional<z.ZodNumber>;
540
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
541
+ desiredCount: z.ZodOptional<z.ZodNumber>;
542
+ scaling: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
543
+ desiredCount: z.ZodOptional<z.ZodNumber>;
544
+ minCapacity: z.ZodOptional<z.ZodNumber>;
545
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
546
+ scalingType: z.ZodOptional<z.ZodEnum<{
547
+ CPU: "CPU";
548
+ MEMORY: "MEMORY";
549
+ }>>;
550
+ }, z.core.$strict>]>>;
551
+ capacityProvider: z.ZodEnum<{
552
+ FARGATE: "FARGATE";
553
+ FARGATE_SPOT: "FARGATE_SPOT";
554
+ EC2: "EC2";
555
+ }>;
556
+ ec2Config: z.ZodOptional<z.ZodObject<{
557
+ instanceType: z.ZodOptional<z.ZodString>;
558
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
559
+ ARM: "ARM";
560
+ STANDARD: "STANDARD";
561
+ }>>;
562
+ minCapacity: z.ZodOptional<z.ZodNumber>;
563
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
564
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
565
+ warmPool: z.ZodOptional<z.ZodObject<{
566
+ minSize: z.ZodOptional<z.ZodNumber>;
567
+ reuseOnScaleIn: z.ZodOptional<z.ZodBoolean>;
568
+ }, z.core.$strict>>;
569
+ }, z.core.$strict>>;
570
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
571
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
572
+ key: z.ZodString;
573
+ sourceText: z.ZodString;
574
+ }, z.core.$strict>>>;
575
+ }, z.core.$strict>>>;
576
+ dockerfilePath: z.ZodOptional<z.ZodString>;
577
+ deployment: z.ZodOptional<z.ZodEnum<{
578
+ code: "code";
579
+ container: "container";
580
+ }>>;
581
+ codePath: z.ZodOptional<z.ZodString>;
582
+ timeout: z.ZodOptional<z.ZodNumber>;
583
+ memory: z.ZodOptional<z.ZodNumber>;
584
+ handler: z.ZodOptional<z.ZodString>;
585
+ runtime: z.ZodOptional<z.ZodString>;
586
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
587
+ __identifier: z.ZodString;
588
+ }, z.core.$strict>, z.ZodObject<{
589
+ __expression: z.ZodString;
590
+ }, z.core.$strict>, z.ZodObject<{
591
+ __call: z.ZodString;
592
+ }, z.core.$strict>]>]>>>;
593
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
594
+ __identifier: z.ZodString;
595
+ }, z.core.$strict>, z.ZodObject<{
596
+ __expression: z.ZodString;
597
+ }, z.core.$strict>, z.ZodObject<{
598
+ __call: z.ZodString;
599
+ }, z.core.$strict>]>]>>>;
600
+ eventSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
601
+ sourceType: z.ZodEnum<{
602
+ sqs: "sqs";
603
+ dynamodb: "dynamodb";
604
+ eventbridge: "eventbridge";
605
+ }>;
606
+ sourceRef: z.ZodString;
607
+ batchSize: z.ZodOptional<z.ZodNumber>;
608
+ startingPosition: z.ZodOptional<z.ZodEnum<{
609
+ TRIM_HORIZON: "TRIM_HORIZON";
610
+ LATEST: "LATEST";
611
+ }>>;
612
+ maxBatchingWindow: z.ZodOptional<z.ZodNumber>;
613
+ reportBatchItemFailures: z.ZodOptional<z.ZodBoolean>;
614
+ }, z.core.$strict>>>;
615
+ functionUrl: z.ZodOptional<z.ZodObject<{
616
+ authType: z.ZodEnum<{
617
+ NONE: "NONE";
618
+ AWS_IAM: "AWS_IAM";
619
+ }>;
620
+ }, z.core.$strict>>;
621
+ description: z.ZodOptional<z.ZodString>;
622
+ scheduleExpression: z.ZodOptional<z.ZodString>;
623
+ architecture: z.ZodOptional<z.ZodEnum<{
624
+ ARM_64: "ARM_64";
625
+ X86_64: "X86_64";
626
+ }>>;
627
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
628
+ functionName: z.ZodOptional<z.ZodString>;
629
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
630
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
631
+ instanceType: z.ZodOptional<z.ZodString & z.ZodType<"t3.nano" | "t3.micro" | "t3.small" | "t3.medium" | "t3.large" | "t3.xlarge" | "t3.2xlarge" | "t3a.nano" | "t3a.micro" | "t3a.small" | "t3a.medium" | "t3a.large" | "t3a.xlarge" | "t3a.2xlarge" | "t4g.nano" | "t4g.micro" | "t4g.small" | "t4g.medium" | "t4g.large" | "t4g.xlarge" | "t4g.2xlarge" | "c5.large" | "c5.xlarge" | "c5.2xlarge" | "c5.4xlarge" | "c5.9xlarge" | "c5.12xlarge" | "c5.18xlarge" | "c5.24xlarge" | "c5a.large" | "c5a.xlarge" | "c5a.2xlarge" | "c5a.4xlarge" | "c5a.8xlarge" | "c5a.12xlarge" | "c5a.16xlarge" | "c5a.24xlarge" | "c6g.medium" | "c6g.large" | "c6g.xlarge" | "c6g.2xlarge" | "c6g.4xlarge" | "c6g.8xlarge" | "c6g.12xlarge" | "c6g.16xlarge" | "r5.large" | "r5.xlarge" | "r5.2xlarge" | "r5.4xlarge" | "r5.8xlarge" | "r5.12xlarge" | "r5.16xlarge" | "r5.24xlarge" | "r5a.large" | "r5a.xlarge" | "r5a.2xlarge" | "r5a.4xlarge" | "r5a.8xlarge" | "r5a.12xlarge" | "r5a.16xlarge" | "r5a.24xlarge" | "r6g.medium" | "r6g.large" | "r6g.xlarge" | "r6g.2xlarge" | "r6g.4xlarge" | "r6g.8xlarge" | "r6g.12xlarge" | "r6g.16xlarge" | "i3.large" | "i3.xlarge" | "i3.2xlarge" | "i3.4xlarge" | "i3.8xlarge" | "i3.16xlarge" | "p3.2xlarge" | "p3.8xlarge" | "p3.16xlarge" | "g4dn.xlarge" | "g4dn.2xlarge" | "g4dn.4xlarge" | "g4dn.8xlarge" | "g4dn.12xlarge" | "g4dn.16xlarge" | "m5.large" | "m5.xlarge" | "m5.2xlarge" | "m5.4xlarge" | "m5.8xlarge" | "m5.12xlarge" | "m5.16xlarge" | "m5.24xlarge" | "m5a.large" | "m5a.xlarge" | "m5a.2xlarge" | "m5a.4xlarge" | "m5a.8xlarge" | "m5a.12xlarge" | "m5a.16xlarge" | "m5a.24xlarge", string, z.core.$ZodTypeInternals<"t3.nano" | "t3.micro" | "t3.small" | "t3.medium" | "t3.large" | "t3.xlarge" | "t3.2xlarge" | "t3a.nano" | "t3a.micro" | "t3a.small" | "t3a.medium" | "t3a.large" | "t3a.xlarge" | "t3a.2xlarge" | "t4g.nano" | "t4g.micro" | "t4g.small" | "t4g.medium" | "t4g.large" | "t4g.xlarge" | "t4g.2xlarge" | "c5.large" | "c5.xlarge" | "c5.2xlarge" | "c5.4xlarge" | "c5.9xlarge" | "c5.12xlarge" | "c5.18xlarge" | "c5.24xlarge" | "c5a.large" | "c5a.xlarge" | "c5a.2xlarge" | "c5a.4xlarge" | "c5a.8xlarge" | "c5a.12xlarge" | "c5a.16xlarge" | "c5a.24xlarge" | "c6g.medium" | "c6g.large" | "c6g.xlarge" | "c6g.2xlarge" | "c6g.4xlarge" | "c6g.8xlarge" | "c6g.12xlarge" | "c6g.16xlarge" | "r5.large" | "r5.xlarge" | "r5.2xlarge" | "r5.4xlarge" | "r5.8xlarge" | "r5.12xlarge" | "r5.16xlarge" | "r5.24xlarge" | "r5a.large" | "r5a.xlarge" | "r5a.2xlarge" | "r5a.4xlarge" | "r5a.8xlarge" | "r5a.12xlarge" | "r5a.16xlarge" | "r5a.24xlarge" | "r6g.medium" | "r6g.large" | "r6g.xlarge" | "r6g.2xlarge" | "r6g.4xlarge" | "r6g.8xlarge" | "r6g.12xlarge" | "r6g.16xlarge" | "i3.large" | "i3.xlarge" | "i3.2xlarge" | "i3.4xlarge" | "i3.8xlarge" | "i3.16xlarge" | "p3.2xlarge" | "p3.8xlarge" | "p3.16xlarge" | "g4dn.xlarge" | "g4dn.2xlarge" | "g4dn.4xlarge" | "g4dn.8xlarge" | "g4dn.12xlarge" | "g4dn.16xlarge" | "m5.large" | "m5.xlarge" | "m5.2xlarge" | "m5.4xlarge" | "m5.8xlarge" | "m5.12xlarge" | "m5.16xlarge" | "m5.24xlarge" | "m5a.large" | "m5a.xlarge" | "m5a.2xlarge" | "m5a.4xlarge" | "m5a.8xlarge" | "m5a.12xlarge" | "m5a.16xlarge" | "m5a.24xlarge", string>>>;
632
+ enableSSH: z.ZodOptional<z.ZodBoolean>;
633
+ keyName: z.ZodOptional<z.ZodString>;
634
+ userData: z.ZodOptional<z.ZodString>;
635
+ securityGroups: z.ZodOptional<z.ZodArray<z.ZodString>>;
636
+ variableName: z.ZodOptional<z.ZodString>;
637
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
638
+ key: z.ZodString;
639
+ sourceText: z.ZodString;
640
+ }, z.core.$strict>>>;
641
+ }, z.core.$strict>>;
642
+ dynamodb: z.ZodOptional<z.ZodArray<z.ZodObject<{
643
+ name: z.ZodString;
644
+ partitionKey: z.ZodObject<{
645
+ name: z.ZodString;
646
+ type: z.ZodEnum<{
647
+ S: "S";
648
+ N: "N";
649
+ B: "B";
650
+ }>;
651
+ }, z.core.$strict>;
652
+ sortKey: z.ZodOptional<z.ZodObject<{
653
+ name: z.ZodString;
654
+ type: z.ZodEnum<{
655
+ S: "S";
656
+ N: "N";
657
+ B: "B";
658
+ }>;
659
+ }, z.core.$strict>>;
660
+ globalSecondaryIndexes: z.ZodOptional<z.ZodArray<z.ZodObject<{
661
+ indexName: z.ZodString;
662
+ partitionKey: z.ZodObject<{
663
+ name: z.ZodString;
664
+ type: z.ZodEnum<{
665
+ S: "S";
666
+ N: "N";
667
+ B: "B";
668
+ }>;
669
+ }, z.core.$strict>;
670
+ sortKey: z.ZodOptional<z.ZodObject<{
671
+ name: z.ZodString;
672
+ type: z.ZodEnum<{
673
+ S: "S";
674
+ N: "N";
675
+ B: "B";
676
+ }>;
677
+ }, z.core.$strict>>;
678
+ }, z.core.$strict>>>;
679
+ ttlAttribute: z.ZodOptional<z.ZodString>;
680
+ stream: z.ZodOptional<z.ZodBoolean>;
681
+ variableName: z.ZodOptional<z.ZodString>;
682
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
683
+ key: z.ZodString;
684
+ sourceText: z.ZodString;
685
+ }, z.core.$strict>>>;
686
+ }, z.core.$strict>>>;
687
+ sqs: z.ZodOptional<z.ZodArray<z.ZodObject<{
688
+ name: z.ZodString;
689
+ queueType: z.ZodDefault<z.ZodEnum<{
690
+ standard: "standard";
691
+ fifo: "fifo";
692
+ }>>;
693
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
694
+ retentionPeriod: z.ZodOptional<z.ZodNumber>;
695
+ contentBasedDeduplication: z.ZodOptional<z.ZodBoolean>;
696
+ variableName: z.ZodOptional<z.ZodString>;
697
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
698
+ key: z.ZodString;
699
+ sourceText: z.ZodString;
700
+ }, z.core.$strict>>>;
701
+ }, z.core.$strict>>>;
702
+ cdn: z.ZodOptional<z.ZodObject<{
703
+ name: z.ZodString;
704
+ defaultOriginRef: z.ZodString;
705
+ behaviours: z.ZodOptional<z.ZodArray<z.ZodObject<{
706
+ pathPattern: z.ZodString;
707
+ originRef: z.ZodString;
708
+ cachePolicy: z.ZodOptional<z.ZodEnum<{
709
+ CACHING_OPTIMIZED: "CACHING_OPTIMIZED";
710
+ CACHING_DISABLED: "CACHING_DISABLED";
711
+ }>>;
712
+ }, z.core.$strict>>>;
713
+ customDomain: z.ZodOptional<z.ZodString>;
714
+ certificateArn: z.ZodOptional<z.ZodString>;
715
+ accessGate: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
716
+ type: z.ZodLiteral<"basic-auth">;
717
+ username: z.ZodString;
718
+ password: z.ZodString;
719
+ }, z.core.$strict>]>>;
720
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
721
+ key: z.ZodString;
722
+ sourceText: z.ZodString;
723
+ }, z.core.$strict>>>;
724
+ }, z.core.$strict>>;
725
+ customCodeBlocks: z.ZodOptional<z.ZodArray<z.ZodObject<{
726
+ sourceText: z.ZodString;
727
+ position: z.ZodEnum<{
728
+ "before-imports": "before-imports";
729
+ "after-imports": "after-imports";
730
+ "after-app-init": "after-app-init";
731
+ "after-tags": "after-tags";
732
+ "after-resource": "after-resource";
733
+ "end-of-file": "end-of-file";
734
+ }>;
735
+ afterManagedResource: z.ZodOptional<z.ZodObject<{
736
+ type: z.ZodEnum<{
737
+ custom: "custom";
738
+ pattern: "pattern";
739
+ storage: "storage";
740
+ database: "database";
741
+ compute: "compute";
742
+ import: "import";
743
+ "app-init": "app-init";
744
+ tags: "tags";
745
+ network: "network";
746
+ messaging: "messaging";
747
+ cdn: "cdn";
748
+ }>;
749
+ name: z.ZodOptional<z.ZodString>;
750
+ }, z.core.$strict>>;
751
+ originalLine: z.ZodOptional<z.ZodNumber>;
752
+ leadingComments: z.ZodOptional<z.ZodArray<z.ZodString>>;
753
+ orphaned: z.ZodOptional<z.ZodBoolean>;
754
+ orphanedComment: z.ZodOptional<z.ZodString>;
755
+ }, z.core.$strict>>>;
756
+ additionalManagedImports: z.ZodOptional<z.ZodArray<z.ZodObject<{
757
+ moduleSpecifier: z.ZodString;
758
+ namedImports: z.ZodArray<z.ZodString>;
759
+ defaultImport: z.ZodOptional<z.ZodString>;
760
+ }, z.core.$strict>>>;
761
+ }, z.core.$strict>;
762
+ export declare const ApplicationGeneratorSchema: z.ZodObject<{
763
+ name: z.ZodString;
764
+ type: z.ZodEnum<{
765
+ custom: "custom";
766
+ standard: "standard";
767
+ resilient: "resilient";
768
+ enterprise: "enterprise";
769
+ tinkerer: "tinkerer";
770
+ lightweight: "lightweight";
771
+ }>;
772
+ pattern: z.ZodOptional<z.ZodEnum<{
773
+ payload: "payload";
774
+ nextjs: "nextjs";
775
+ }>>;
776
+ patternTier: z.ZodOptional<z.ZodEnum<{
777
+ custom: "custom";
778
+ standard: "standard";
779
+ resilient: "resilient";
780
+ lightweight: "lightweight";
781
+ }>>;
782
+ patternDomain: z.ZodOptional<z.ZodString>;
783
+ customDatabase: z.ZodOptional<z.ZodObject<{
784
+ type: z.ZodEnum<{
785
+ Aurora: "Aurora";
786
+ Instance: "Instance";
787
+ }>;
788
+ instanceType: z.ZodOptional<z.ZodString>;
789
+ backupRetention: z.ZodOptional<z.ZodNumber>;
790
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
791
+ encryption: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
792
+ useCMK: z.ZodLiteral<true>;
793
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
794
+ }, z.core.$strict>>;
795
+ customCompute: z.ZodOptional<z.ZodObject<{
796
+ memorySize: z.ZodOptional<z.ZodNumber>;
797
+ timeout: z.ZodOptional<z.ZodNumber>;
798
+ }, z.core.$strict>>;
799
+ region: z.ZodOptional<z.ZodString>;
800
+ owner: z.ZodOptional<z.ZodString>;
801
+ includeDatabase: z.ZodOptional<z.ZodBoolean>;
802
+ databaseName: z.ZodOptional<z.ZodString>;
803
+ vpcId: z.ZodOptional<z.ZodString>;
804
+ network: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
805
+ maxAzs: z.ZodOptional<z.ZodNumber>;
806
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
807
+ count: z.ZodOptional<z.ZodNumber>;
808
+ }, z.core.$strict>]>>;
809
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
810
+ destination: z.ZodOptional<z.ZodEnum<{
811
+ cloudwatch: "cloudwatch";
812
+ s3: "s3";
813
+ }>>;
814
+ retentionDays: z.ZodOptional<z.ZodNumber>;
815
+ trafficType: z.ZodOptional<z.ZodEnum<{
816
+ ALL: "ALL";
817
+ ACCEPT: "ACCEPT";
818
+ REJECT: "REJECT";
819
+ }>>;
820
+ }, z.core.$strict>]>>;
821
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
822
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
823
+ s3: z.ZodOptional<z.ZodBoolean>;
824
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
825
+ }, z.core.$strict>]>>;
826
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
827
+ ecr: z.ZodOptional<z.ZodBoolean>;
828
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
829
+ kms: z.ZodOptional<z.ZodBoolean>;
830
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
831
+ ssm: z.ZodOptional<z.ZodBoolean>;
832
+ sts: z.ZodOptional<z.ZodBoolean>;
833
+ }, z.core.$strict>]>>;
834
+ }, z.core.$strict>]>>;
835
+ cidrMask: z.ZodOptional<z.ZodNumber>;
836
+ }, z.core.$strict>]>>;
837
+ services: z.ZodOptional<z.ZodArray<z.ZodObject<{
838
+ name: z.ZodString;
839
+ dockerfilePath: z.ZodOptional<z.ZodString>;
840
+ containerPort: z.ZodOptional<z.ZodNumber>;
841
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
842
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
843
+ path: z.ZodString;
844
+ priority: z.ZodOptional<z.ZodNumber>;
845
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
846
+ path: z.ZodString;
847
+ priority: z.ZodOptional<z.ZodNumber>;
848
+ }, z.core.$strict>>]>>;
849
+ }, z.core.$strict>>>;
850
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
851
+ snapshotUsername: z.ZodOptional<z.ZodString>;
852
+ }, z.core.$strict>;
853
+ export type ApplicationResourcePlan = z.infer<typeof ApplicationResourcePlanSchema>;
854
+ export type ApplicationGeneratorOptions = z.infer<typeof ApplicationGeneratorSchema>;