@fjall/generator 0.88.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 (57) hide show
  1. package/dist/src/ast/astComputeParser.d.ts +4 -0
  2. package/dist/src/ast/astComputeParser.js +427 -0
  3. package/dist/src/ast/astInfrastructureParser.d.ts +357 -0
  4. package/dist/src/ast/astInfrastructureParser.js +1925 -0
  5. package/dist/src/ast/astSurgicalModification.d.ts +47 -0
  6. package/dist/src/ast/astSurgicalModification.js +400 -0
  7. package/dist/src/ast/index.d.ts +2 -0
  8. package/dist/src/ast/index.js +2 -0
  9. package/dist/src/aws/regions.d.ts +30 -0
  10. package/dist/src/aws/regions.js +254 -0
  11. package/dist/src/generation/common.d.ts +86 -0
  12. package/dist/src/generation/common.js +187 -0
  13. package/dist/src/generation/compute.d.ts +6 -0
  14. package/dist/src/generation/compute.js +547 -0
  15. package/dist/src/generation/database.d.ts +54 -0
  16. package/dist/src/generation/database.js +201 -0
  17. package/dist/src/generation/index.d.ts +12 -0
  18. package/dist/src/generation/index.js +18 -0
  19. package/dist/src/generation/infrastructure.d.ts +44 -0
  20. package/dist/src/generation/infrastructure.js +389 -0
  21. package/dist/src/generation/storage.d.ts +23 -0
  22. package/dist/src/generation/storage.js +174 -0
  23. package/dist/src/generation/storageConnections.d.ts +37 -0
  24. package/dist/src/generation/storageConnections.js +71 -0
  25. package/dist/src/index.d.ts +10 -0
  26. package/dist/src/index.js +19 -0
  27. package/dist/src/planning/index.d.ts +1 -0
  28. package/dist/src/planning/index.js +1 -0
  29. package/dist/src/planning/resourcePlanning.d.ts +58 -0
  30. package/dist/src/planning/resourcePlanning.js +216 -0
  31. package/dist/src/presets/index.d.ts +3 -0
  32. package/dist/src/presets/index.js +3 -0
  33. package/dist/src/presets/patternTierPresets.d.ts +93 -0
  34. package/dist/src/presets/patternTierPresets.js +131 -0
  35. package/dist/src/presets/storagePresets.d.ts +11 -0
  36. package/dist/src/presets/storagePresets.js +36 -0
  37. package/dist/src/presets/tierPresets.d.ts +59 -0
  38. package/dist/src/presets/tierPresets.js +384 -0
  39. package/dist/src/presets/tierTypes.d.ts +301 -0
  40. package/dist/src/presets/tierTypes.js +7 -0
  41. package/dist/src/schemas/constants.d.ts +74 -0
  42. package/dist/src/schemas/constants.js +208 -0
  43. package/dist/src/schemas/index.d.ts +3 -0
  44. package/dist/src/schemas/index.js +3 -0
  45. package/dist/src/schemas/instanceTypeArchitecture.d.ts +35 -0
  46. package/dist/src/schemas/instanceTypeArchitecture.js +75 -0
  47. package/dist/src/schemas/resourceSchemas.d.ts +3534 -0
  48. package/dist/src/schemas/resourceSchemas.js +2015 -0
  49. package/dist/src/types/Result.d.ts +19 -0
  50. package/dist/src/types/Result.js +31 -0
  51. package/dist/src/util/errorUtils.d.ts +2 -0
  52. package/dist/src/util/errorUtils.js +15 -0
  53. package/dist/src/validation/patterns.d.ts +300 -0
  54. package/dist/src/validation/patterns.js +360 -0
  55. package/dist/src/version.d.ts +1 -0
  56. package/dist/src/version.js +1 -0
  57. package/package.json +32 -0
@@ -0,0 +1,3534 @@
1
+ import { z } from "zod";
2
+ export declare const ResourceNameSchema: z.ZodString;
3
+ export declare const BucketNameSchema: z.ZodString;
4
+ export declare const DatabaseNameSchema: z.ZodString;
5
+ export declare const AppNameSchema: z.ZodString;
6
+ export declare const PortSchema: z.ZodNumber;
7
+ /**
8
+ * Extra property preserved verbatim during round-trip.
9
+ * Captures properties inside managed factory calls that the parser
10
+ * does not specifically handle (e.g. CDK PolicyStatement[], custom configs).
11
+ */
12
+ export declare const ExtraPropertySchema: z.ZodObject<{
13
+ key: z.ZodString;
14
+ sourceText: z.ZodString;
15
+ }, z.core.$strict>;
16
+ /**
17
+ * Schema for special values used in code generation.
18
+ * These represent dynamic code references rather than literal values.
19
+ */
20
+ export declare const IdentifierValueSchema: z.ZodObject<{
21
+ __identifier: z.ZodString;
22
+ }, z.core.$strict>;
23
+ export declare const ExpressionValueSchema: z.ZodObject<{
24
+ __expression: z.ZodString;
25
+ }, z.core.$strict>;
26
+ export declare const CallValueSchema: z.ZodObject<{
27
+ __call: z.ZodString;
28
+ }, z.core.$strict>;
29
+ export declare const SpecialValueSchema: z.ZodUnion<readonly [z.ZodObject<{
30
+ __identifier: z.ZodString;
31
+ }, z.core.$strict>, z.ZodObject<{
32
+ __expression: z.ZodString;
33
+ }, z.core.$strict>, z.ZodObject<{
34
+ __call: z.ZodString;
35
+ }, z.core.$strict>]>;
36
+ /**
37
+ * Schema for environment variable values.
38
+ * Supports literal values and special code generation values.
39
+ */
40
+ export declare const EnvironmentValueSchema: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
41
+ __identifier: z.ZodString;
42
+ }, z.core.$strict>, z.ZodObject<{
43
+ __expression: z.ZodString;
44
+ }, z.core.$strict>, z.ZodObject<{
45
+ __call: z.ZodString;
46
+ }, z.core.$strict>]>]>;
47
+ export declare const EnvironmentRecordSchema: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
48
+ __identifier: z.ZodString;
49
+ }, z.core.$strict>, z.ZodObject<{
50
+ __expression: z.ZodString;
51
+ }, z.core.$strict>, z.ZodObject<{
52
+ __call: z.ZodString;
53
+ }, z.core.$strict>]>]>>;
54
+ /**
55
+ * Schema for importing secrets from AWS Secrets Manager.
56
+ * Matches the SecretImport type in infrastructure.
57
+ */
58
+ export declare const SecretImportSchema: z.ZodObject<{
59
+ id: z.ZodString;
60
+ name: z.ZodString;
61
+ field: z.ZodOptional<z.ZodString>;
62
+ }, z.core.$strict>;
63
+ /**
64
+ * Record of secret imports keyed by environment variable name.
65
+ */
66
+ export declare const SecretsImportRecordSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
67
+ id: z.ZodString;
68
+ name: z.ZodString;
69
+ field: z.ZodOptional<z.ZodString>;
70
+ }, z.core.$strict>>;
71
+ /**
72
+ * Schema for metadata values.
73
+ * Supports simple types and complex AWS SDK types (VpcConfigResponse, Date, etc.)
74
+ * Uses z.unknown() for flexibility with AWS resource properties whilst avoiding z.any().
75
+ */
76
+ export declare const MetadataRecordSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
77
+ export declare const Ec2ConfigSchema: z.ZodObject<{
78
+ instanceType: z.ZodOptional<z.ZodString>;
79
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
80
+ ARM: "ARM";
81
+ STANDARD: "STANDARD";
82
+ }>>;
83
+ minCapacity: z.ZodOptional<z.ZodNumber>;
84
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
85
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
86
+ }, z.core.$strict>;
87
+ export declare const DatabaseTypeSchema: z.ZodEnum<{
88
+ Aurora: "Aurora";
89
+ Instance: "Instance";
90
+ GlobalAurora: "GlobalAurora";
91
+ }>;
92
+ export declare const ProxyConfigSchema: z.ZodObject<{
93
+ maxConnections: z.ZodOptional<z.ZodNumber>;
94
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
95
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
96
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
97
+ }, z.core.$strict>;
98
+ export declare const ReadReplicaConfigSchema: z.ZodObject<{
99
+ instanceType: z.ZodOptional<z.ZodString>;
100
+ availabilityZone: z.ZodOptional<z.ZodString>;
101
+ }, z.core.$strict>;
102
+ export declare const SecretRotationConfigSchema: z.ZodObject<{
103
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
104
+ }, z.core.$strict>;
105
+ export declare const CredentialsConfigSchema: z.ZodObject<{
106
+ username: z.ZodOptional<z.ZodString>;
107
+ secretRotation: z.ZodOptional<z.ZodObject<{
108
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
109
+ }, z.core.$strict>>;
110
+ }, z.core.$strict>;
111
+ export declare const ProxyConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
112
+ maxConnections: z.ZodOptional<z.ZodNumber>;
113
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
114
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
115
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
116
+ }, z.core.$strict>]>;
117
+ export declare const ReadReplicaConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
118
+ instanceType: z.ZodOptional<z.ZodString>;
119
+ availabilityZone: z.ZodOptional<z.ZodString>;
120
+ }, z.core.$strict>]>;
121
+ export declare const AuroraReaderConfigSchema: z.ZodObject<{
122
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
123
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
124
+ identifierSuffix: z.ZodOptional<z.ZodString>;
125
+ availabilityZone: z.ZodOptional<z.ZodString>;
126
+ }, z.core.$strict>;
127
+ export declare const AuroraWriterConfigSchema: z.ZodObject<{
128
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
129
+ identifierSuffix: z.ZodOptional<z.ZodString>;
130
+ availabilityZone: z.ZodOptional<z.ZodString>;
131
+ }, z.core.$strict>;
132
+ export declare const AuroraReadersConfigSchema: z.ZodObject<{
133
+ count: z.ZodOptional<z.ZodNumber>;
134
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
135
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
136
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
137
+ identifierSuffix: z.ZodOptional<z.ZodString>;
138
+ availabilityZone: z.ZodOptional<z.ZodString>;
139
+ }, z.core.$strict>>>;
140
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
141
+ }, z.core.$strict>;
142
+ export declare const AuroraReadersConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
143
+ count: z.ZodOptional<z.ZodNumber>;
144
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
145
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
146
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
147
+ identifierSuffix: z.ZodOptional<z.ZodString>;
148
+ availabilityZone: z.ZodOptional<z.ZodString>;
149
+ }, z.core.$strict>>>;
150
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
151
+ }, z.core.$strict>]>;
152
+ export declare const AwsManagedKeySchema: z.ZodObject<{
153
+ awsManaged: z.ZodLiteral<true>;
154
+ }, z.core.$strict>;
155
+ export declare const CustomerManagedKeyMarkerSchema: z.ZodObject<{
156
+ useCMK: z.ZodLiteral<true>;
157
+ }, z.core.$strict>;
158
+ export declare const EncryptionKeySpecSchema: z.ZodUnion<readonly [z.ZodObject<{
159
+ awsManaged: z.ZodLiteral<true>;
160
+ }, z.core.$strict>, z.ZodObject<{
161
+ useCMK: z.ZodLiteral<true>;
162
+ }, z.core.$strict>]>;
163
+ export declare const DatabaseInsightsConfigSchema: z.ZodObject<{
164
+ mode: z.ZodOptional<z.ZodEnum<{
165
+ standard: "standard";
166
+ advanced: "advanced";
167
+ }>>;
168
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
169
+ awsManaged: z.ZodLiteral<true>;
170
+ }, z.core.$strict>, z.ZodObject<{
171
+ useCMK: z.ZodLiteral<true>;
172
+ }, z.core.$strict>]>>;
173
+ }, z.core.$strict>;
174
+ export declare const DatabaseInsightsConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
175
+ mode: z.ZodOptional<z.ZodEnum<{
176
+ standard: "standard";
177
+ advanced: "advanced";
178
+ }>>;
179
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
180
+ awsManaged: z.ZodLiteral<true>;
181
+ }, z.core.$strict>, z.ZodObject<{
182
+ useCMK: z.ZodLiteral<true>;
183
+ }, z.core.$strict>]>>;
184
+ }, z.core.$strict>]>;
185
+ export declare const EncryptionConfigSchema: z.ZodObject<{
186
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
187
+ awsManaged: z.ZodLiteral<true>;
188
+ }, z.core.$strict>, z.ZodObject<{
189
+ useCMK: z.ZodLiteral<true>;
190
+ }, z.core.$strict>]>>;
191
+ }, z.core.$strict>;
192
+ export declare const DatabaseResourcePlanSchema: z.ZodObject<{
193
+ name: z.ZodString;
194
+ type: z.ZodEnum<{
195
+ Aurora: "Aurora";
196
+ Instance: "Instance";
197
+ GlobalAurora: "GlobalAurora";
198
+ }>;
199
+ databaseName: z.ZodString;
200
+ instanceType: z.ZodOptional<z.ZodString>;
201
+ multiAz: z.ZodOptional<z.ZodBoolean>;
202
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
203
+ enableSecretRotation: z.ZodOptional<z.ZodBoolean>;
204
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
205
+ mode: z.ZodOptional<z.ZodEnum<{
206
+ standard: "standard";
207
+ advanced: "advanced";
208
+ }>>;
209
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
210
+ awsManaged: z.ZodLiteral<true>;
211
+ }, z.core.$strict>, z.ZodObject<{
212
+ useCMK: z.ZodLiteral<true>;
213
+ }, z.core.$strict>]>>;
214
+ }, z.core.$strict>]>>;
215
+ port: z.ZodOptional<z.ZodNumber>;
216
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
217
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
218
+ maxConnections: z.ZodOptional<z.ZodNumber>;
219
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
220
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
221
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
222
+ }, z.core.$strict>]>>;
223
+ credentials: z.ZodOptional<z.ZodObject<{
224
+ username: z.ZodOptional<z.ZodString>;
225
+ secretRotation: z.ZodOptional<z.ZodObject<{
226
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
227
+ }, z.core.$strict>>;
228
+ }, z.core.$strict>>;
229
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
230
+ instanceType: z.ZodOptional<z.ZodString>;
231
+ availabilityZone: z.ZodOptional<z.ZodString>;
232
+ }, z.core.$strict>]>>;
233
+ encryption: z.ZodOptional<z.ZodObject<{
234
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
235
+ awsManaged: z.ZodLiteral<true>;
236
+ }, z.core.$strict>, z.ZodObject<{
237
+ useCMK: z.ZodLiteral<true>;
238
+ }, z.core.$strict>]>>;
239
+ }, z.core.$strict>>;
240
+ writer: z.ZodOptional<z.ZodObject<{
241
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
242
+ identifierSuffix: z.ZodOptional<z.ZodString>;
243
+ availabilityZone: z.ZodOptional<z.ZodString>;
244
+ }, z.core.$strict>>;
245
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
246
+ count: z.ZodOptional<z.ZodNumber>;
247
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
248
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
249
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
250
+ identifierSuffix: z.ZodOptional<z.ZodString>;
251
+ availabilityZone: z.ZodOptional<z.ZodString>;
252
+ }, z.core.$strict>>>;
253
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
254
+ }, z.core.$strict>]>>;
255
+ backupRetention: z.ZodOptional<z.ZodNumber>;
256
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
257
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
258
+ primaryRegion: z.ZodOptional<z.ZodString>;
259
+ secondaryRegions: z.ZodOptional<z.ZodArray<z.ZodString>>;
260
+ globalClusterIdentifier: z.ZodOptional<z.ZodString>;
261
+ enableGlobalWriteForwarding: z.ZodOptional<z.ZodBoolean>;
262
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
263
+ snapshotUsername: z.ZodOptional<z.ZodString>;
264
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
265
+ postgresql: "postgresql";
266
+ mysql: "mysql";
267
+ }>>;
268
+ engineExpression: z.ZodOptional<z.ZodString>;
269
+ variableName: z.ZodOptional<z.ZodString>;
270
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
271
+ key: z.ZodString;
272
+ sourceText: z.ZodString;
273
+ }, z.core.$strict>>>;
274
+ }, z.core.$strict>;
275
+ /**
276
+ * Stack placement options for S3 buckets.
277
+ * - "storage" (default): Created via app.addStorage() in Storage stack
278
+ * - "cdn": Created in CDN stack for CloudFront-consumed buckets (avoids circular dependencies)
279
+ * - "compute": Created in Compute stack for Lambda-consumed buckets
280
+ */
281
+ export declare const S3_STACK_PLACEMENTS: readonly ["storage", "cdn", "compute"];
282
+ export declare const S3ResourcePlanSchema: z.ZodObject<{
283
+ name: z.ZodString;
284
+ bucketName: z.ZodOptional<z.ZodString>;
285
+ publicReadAccess: z.ZodOptional<z.ZodBoolean>;
286
+ websiteHosting: z.ZodOptional<z.ZodObject<{
287
+ indexDocument: z.ZodString;
288
+ errorDocument: z.ZodOptional<z.ZodString>;
289
+ }, z.core.$strict>>;
290
+ backupVaultTier: z.ZodOptional<z.ZodEnum<{
291
+ standard: "standard";
292
+ resilient: "resilient";
293
+ enterprise: "enterprise";
294
+ }>>;
295
+ versioned: z.ZodOptional<z.ZodBoolean>;
296
+ encryption: z.ZodOptional<z.ZodEnum<{
297
+ KMS: "KMS";
298
+ AES256: "AES256";
299
+ }>>;
300
+ kmsKeyArn: z.ZodOptional<z.ZodString>;
301
+ cors: z.ZodOptional<z.ZodArray<z.ZodObject<{
302
+ allowedOrigins: z.ZodArray<z.ZodString>;
303
+ allowedMethods: z.ZodArray<z.ZodString>;
304
+ }, z.core.$strict>>>;
305
+ deployment: z.ZodOptional<z.ZodObject<{
306
+ source: z.ZodString;
307
+ prune: z.ZodOptional<z.ZodBoolean>;
308
+ cacheControl: z.ZodOptional<z.ZodObject<{
309
+ maxAge: z.ZodOptional<z.ZodNumber>;
310
+ immutable: z.ZodOptional<z.ZodBoolean>;
311
+ }, z.core.$strict>>;
312
+ }, z.core.$strict>>;
313
+ stackPlacement: z.ZodOptional<z.ZodEnum<{
314
+ storage: "storage";
315
+ compute: "compute";
316
+ cdn: "cdn";
317
+ }>>;
318
+ variableName: z.ZodOptional<z.ZodString>;
319
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
320
+ key: z.ZodString;
321
+ sourceText: z.ZodString;
322
+ }, z.core.$strict>>>;
323
+ }, z.core.$strict>;
324
+ export declare const NatConfigSchema: z.ZodObject<{
325
+ count: z.ZodOptional<z.ZodNumber>;
326
+ }, z.core.$strict>;
327
+ export declare const NatConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
328
+ count: z.ZodOptional<z.ZodNumber>;
329
+ }, z.core.$strict>]>;
330
+ export declare const FlowLogConfigSchema: z.ZodObject<{
331
+ destination: z.ZodOptional<z.ZodEnum<{
332
+ cloudwatch: "cloudwatch";
333
+ s3: "s3";
334
+ }>>;
335
+ retentionDays: z.ZodOptional<z.ZodNumber>;
336
+ trafficType: z.ZodOptional<z.ZodEnum<{
337
+ ALL: "ALL";
338
+ ACCEPT: "ACCEPT";
339
+ REJECT: "REJECT";
340
+ }>>;
341
+ }, z.core.$strict>;
342
+ export declare const FlowLogConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
343
+ destination: z.ZodOptional<z.ZodEnum<{
344
+ cloudwatch: "cloudwatch";
345
+ s3: "s3";
346
+ }>>;
347
+ retentionDays: z.ZodOptional<z.ZodNumber>;
348
+ trafficType: z.ZodOptional<z.ZodEnum<{
349
+ ALL: "ALL";
350
+ ACCEPT: "ACCEPT";
351
+ REJECT: "REJECT";
352
+ }>>;
353
+ }, z.core.$strict>]>;
354
+ export declare const GatewayEndpointsConfigSchema: z.ZodObject<{
355
+ s3: z.ZodOptional<z.ZodBoolean>;
356
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
357
+ }, z.core.$strict>;
358
+ export declare const GatewayEndpointsConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
359
+ s3: z.ZodOptional<z.ZodBoolean>;
360
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
361
+ }, z.core.$strict>]>;
362
+ export declare const InterfaceEndpointsConfigSchema: z.ZodObject<{
363
+ ecr: z.ZodOptional<z.ZodBoolean>;
364
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
365
+ kms: z.ZodOptional<z.ZodBoolean>;
366
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
367
+ ssm: z.ZodOptional<z.ZodBoolean>;
368
+ sts: z.ZodOptional<z.ZodBoolean>;
369
+ }, z.core.$strict>;
370
+ export declare const InterfaceEndpointsConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
371
+ ecr: z.ZodOptional<z.ZodBoolean>;
372
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
373
+ kms: z.ZodOptional<z.ZodBoolean>;
374
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
375
+ ssm: z.ZodOptional<z.ZodBoolean>;
376
+ sts: z.ZodOptional<z.ZodBoolean>;
377
+ }, z.core.$strict>]>;
378
+ export declare const VpcEndpointsConfigSchema: z.ZodObject<{
379
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
380
+ s3: z.ZodOptional<z.ZodBoolean>;
381
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
382
+ }, z.core.$strict>]>>;
383
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
384
+ ecr: z.ZodOptional<z.ZodBoolean>;
385
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
386
+ kms: z.ZodOptional<z.ZodBoolean>;
387
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
388
+ ssm: z.ZodOptional<z.ZodBoolean>;
389
+ sts: z.ZodOptional<z.ZodBoolean>;
390
+ }, z.core.$strict>]>>;
391
+ }, z.core.$strict>;
392
+ export declare const VpcEndpointsConfigOrFalseSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
393
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
394
+ s3: z.ZodOptional<z.ZodBoolean>;
395
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
396
+ }, z.core.$strict>]>>;
397
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
398
+ ecr: z.ZodOptional<z.ZodBoolean>;
399
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
400
+ kms: z.ZodOptional<z.ZodBoolean>;
401
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
402
+ ssm: z.ZodOptional<z.ZodBoolean>;
403
+ sts: z.ZodOptional<z.ZodBoolean>;
404
+ }, z.core.$strict>]>>;
405
+ }, z.core.$strict>]>;
406
+ export declare const NetworkResourcePlanSchema: z.ZodObject<{
407
+ maxAzs: z.ZodOptional<z.ZodNumber>;
408
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
409
+ count: z.ZodOptional<z.ZodNumber>;
410
+ }, z.core.$strict>]>>;
411
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
412
+ destination: z.ZodOptional<z.ZodEnum<{
413
+ cloudwatch: "cloudwatch";
414
+ s3: "s3";
415
+ }>>;
416
+ retentionDays: z.ZodOptional<z.ZodNumber>;
417
+ trafficType: z.ZodOptional<z.ZodEnum<{
418
+ ALL: "ALL";
419
+ ACCEPT: "ACCEPT";
420
+ REJECT: "REJECT";
421
+ }>>;
422
+ }, z.core.$strict>]>>;
423
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
424
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
425
+ s3: z.ZodOptional<z.ZodBoolean>;
426
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
427
+ }, z.core.$strict>]>>;
428
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
429
+ ecr: z.ZodOptional<z.ZodBoolean>;
430
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
431
+ kms: z.ZodOptional<z.ZodBoolean>;
432
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
433
+ ssm: z.ZodOptional<z.ZodBoolean>;
434
+ sts: z.ZodOptional<z.ZodBoolean>;
435
+ }, z.core.$strict>]>>;
436
+ }, z.core.$strict>]>>;
437
+ cidrMask: z.ZodOptional<z.ZodNumber>;
438
+ }, z.core.$strict>;
439
+ /**
440
+ * Additional network resource plan schema for app.addNetwork() VPCs.
441
+ * Extends NetworkResourcePlanSchema with a required name field.
442
+ */
443
+ export declare const AdditionalNetworkResourcePlanSchema: z.ZodObject<{
444
+ maxAzs: z.ZodOptional<z.ZodNumber>;
445
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
446
+ count: z.ZodOptional<z.ZodNumber>;
447
+ }, z.core.$strict>]>>;
448
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
449
+ destination: z.ZodOptional<z.ZodEnum<{
450
+ cloudwatch: "cloudwatch";
451
+ s3: "s3";
452
+ }>>;
453
+ retentionDays: z.ZodOptional<z.ZodNumber>;
454
+ trafficType: z.ZodOptional<z.ZodEnum<{
455
+ ALL: "ALL";
456
+ ACCEPT: "ACCEPT";
457
+ REJECT: "REJECT";
458
+ }>>;
459
+ }, z.core.$strict>]>>;
460
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
461
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
462
+ s3: z.ZodOptional<z.ZodBoolean>;
463
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
464
+ }, z.core.$strict>]>>;
465
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
466
+ ecr: z.ZodOptional<z.ZodBoolean>;
467
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
468
+ kms: z.ZodOptional<z.ZodBoolean>;
469
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
470
+ ssm: z.ZodOptional<z.ZodBoolean>;
471
+ sts: z.ZodOptional<z.ZodBoolean>;
472
+ }, z.core.$strict>]>>;
473
+ }, z.core.$strict>]>>;
474
+ cidrMask: z.ZodOptional<z.ZodNumber>;
475
+ name: z.ZodString;
476
+ }, z.core.$strict>;
477
+ /**
478
+ * Network configuration for App.getApp() options.
479
+ * - false: No network (S3-only apps)
480
+ * - object: Create VPC with specified configuration
481
+ */
482
+ export declare const NetworkConfigSchema: z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
483
+ maxAzs: z.ZodOptional<z.ZodNumber>;
484
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
485
+ count: z.ZodOptional<z.ZodNumber>;
486
+ }, z.core.$strict>]>>;
487
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
488
+ destination: z.ZodOptional<z.ZodEnum<{
489
+ cloudwatch: "cloudwatch";
490
+ s3: "s3";
491
+ }>>;
492
+ retentionDays: z.ZodOptional<z.ZodNumber>;
493
+ trafficType: z.ZodOptional<z.ZodEnum<{
494
+ ALL: "ALL";
495
+ ACCEPT: "ACCEPT";
496
+ REJECT: "REJECT";
497
+ }>>;
498
+ }, z.core.$strict>]>>;
499
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
500
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
501
+ s3: z.ZodOptional<z.ZodBoolean>;
502
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
503
+ }, z.core.$strict>]>>;
504
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
505
+ ecr: z.ZodOptional<z.ZodBoolean>;
506
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
507
+ kms: z.ZodOptional<z.ZodBoolean>;
508
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
509
+ ssm: z.ZodOptional<z.ZodBoolean>;
510
+ sts: z.ZodOptional<z.ZodBoolean>;
511
+ }, z.core.$strict>]>>;
512
+ }, z.core.$strict>]>>;
513
+ cidrMask: z.ZodOptional<z.ZodNumber>;
514
+ }, z.core.$strict>]>;
515
+ /**
516
+ * Network name schema for additional VPCs.
517
+ * Must be PascalCase as it's used as a CDK construct ID.
518
+ */
519
+ export declare const NetworkNameSchema: z.ZodString;
520
+ /**
521
+ * Network generator schema for configuring network infrastructure.
522
+ *
523
+ * Behaviour depends on whether networkName is provided:
524
+ * - With networkName: Adds an additional VPC via app.addNetwork()
525
+ * - Without networkName: Updates the primary network config in App.getApp()
526
+ */
527
+ export declare const NetworkGeneratorSchema: z.ZodObject<{
528
+ appName: z.ZodString;
529
+ networkName: z.ZodOptional<z.ZodString>;
530
+ maxAzs: z.ZodOptional<z.ZodNumber>;
531
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
532
+ count: z.ZodOptional<z.ZodNumber>;
533
+ }, z.core.$strict>]>>;
534
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
535
+ destination: z.ZodOptional<z.ZodEnum<{
536
+ cloudwatch: "cloudwatch";
537
+ s3: "s3";
538
+ }>>;
539
+ retentionDays: z.ZodOptional<z.ZodNumber>;
540
+ trafficType: z.ZodOptional<z.ZodEnum<{
541
+ ALL: "ALL";
542
+ ACCEPT: "ACCEPT";
543
+ REJECT: "REJECT";
544
+ }>>;
545
+ }, z.core.$strict>]>>;
546
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
547
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
548
+ s3: z.ZodOptional<z.ZodBoolean>;
549
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
550
+ }, z.core.$strict>]>>;
551
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
552
+ ecr: z.ZodOptional<z.ZodBoolean>;
553
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
554
+ kms: z.ZodOptional<z.ZodBoolean>;
555
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
556
+ ssm: z.ZodOptional<z.ZodBoolean>;
557
+ sts: z.ZodOptional<z.ZodBoolean>;
558
+ }, z.core.$strict>]>>;
559
+ }, z.core.$strict>]>>;
560
+ }, z.core.$strict>;
561
+ export declare const LambdaEventSourceSchema: z.ZodObject<{
562
+ sourceType: z.ZodEnum<{
563
+ dynamodb: "dynamodb";
564
+ sqs: "sqs";
565
+ eventbridge: "eventbridge";
566
+ }>;
567
+ sourceRef: z.ZodString;
568
+ batchSize: z.ZodOptional<z.ZodNumber>;
569
+ startingPosition: z.ZodOptional<z.ZodEnum<{
570
+ TRIM_HORIZON: "TRIM_HORIZON";
571
+ LATEST: "LATEST";
572
+ }>>;
573
+ maxBatchingWindow: z.ZodOptional<z.ZodNumber>;
574
+ reportBatchItemFailures: z.ZodOptional<z.ZodBoolean>;
575
+ }, z.core.$strict>;
576
+ export type LambdaEventSource = z.infer<typeof LambdaEventSourceSchema>;
577
+ export declare const ComputeTypeSchema: z.ZodEnum<{
578
+ ecs: "ecs";
579
+ lambda: "lambda";
580
+ ec2: "ec2";
581
+ }>;
582
+ export declare const EcsCapacityProviderSchema: z.ZodEnum<{
583
+ FARGATE: "FARGATE";
584
+ FARGATE_SPOT: "FARGATE_SPOT";
585
+ EC2: "EC2";
586
+ }>;
587
+ export declare const InstanceTypeSchema: z.ZodString & z.ZodType<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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>>;
588
+ /**
589
+ * Container configuration for ECS tasks.
590
+ * For single-container services, name is optional and auto-generated.
591
+ * For multi-container tasks, first container with a port gets load balancer registration.
592
+ */
593
+ export declare const ContainerConfigSchema: z.ZodObject<{
594
+ name: z.ZodOptional<z.ZodString>;
595
+ image: z.ZodOptional<z.ZodString>;
596
+ port: z.ZodOptional<z.ZodNumber>;
597
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
598
+ __identifier: z.ZodString;
599
+ }, z.core.$strict>, z.ZodObject<{
600
+ __expression: z.ZodString;
601
+ }, z.core.$strict>, z.ZodObject<{
602
+ __call: z.ZodString;
603
+ }, z.core.$strict>]>]>>>;
604
+ secretsImport: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
605
+ id: z.ZodString;
606
+ name: z.ZodString;
607
+ field: z.ZodOptional<z.ZodString>;
608
+ }, z.core.$strict>>>;
609
+ command: z.ZodOptional<z.ZodArray<z.ZodString>>;
610
+ entryPoint: z.ZodOptional<z.ZodArray<z.ZodString>>;
611
+ essential: z.ZodOptional<z.ZodBoolean>;
612
+ healthCheck: z.ZodOptional<z.ZodObject<{
613
+ command: z.ZodArray<z.ZodString>;
614
+ interval: z.ZodOptional<z.ZodNumber>;
615
+ timeout: z.ZodOptional<z.ZodNumber>;
616
+ retries: z.ZodOptional<z.ZodNumber>;
617
+ startPeriod: z.ZodOptional<z.ZodNumber>;
618
+ }, z.core.$strict>>;
619
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
620
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
621
+ key: z.ZodString;
622
+ sourceText: z.ZodString;
623
+ }, z.core.$strict>>>;
624
+ }, z.core.$strict>;
625
+ /**
626
+ * TODO: CRITICAL - Zod schema for ImportedResourcePlan interface
627
+ *
628
+ * This schema validates the ImportedResourcePlan interface and is preserved
629
+ * for future pure AST implementation of import functionality.
630
+ *
631
+ * When re-enabling import with pure AST:
632
+ * - Remove cdkCode field (string manipulation anti-pattern)
633
+ * - Remove imports field (will be handled by AST)
634
+ * - Align with factory pattern for resource creation
635
+ *
636
+ * See resourcePlanning.ts ImportedResourcePlan interface for full documentation.
637
+ */
638
+ export declare const ImportedResourcePlanSchema: z.ZodObject<{
639
+ id: z.ZodString;
640
+ type: z.ZodEnum<{
641
+ s3: "s3";
642
+ ecs: "ecs";
643
+ lambda: "lambda";
644
+ ec2: "ec2";
645
+ rds: "rds";
646
+ aurora: "aurora";
647
+ vpc: "vpc";
648
+ elasticache: "elasticache";
649
+ }>;
650
+ name: z.ZodString;
651
+ physicalId: z.ZodString;
652
+ stack: z.ZodEnum<{
653
+ storage: "storage";
654
+ compute: "compute";
655
+ network: "network";
656
+ }>;
657
+ cdkCode: z.ZodString;
658
+ imports: z.ZodArray<z.ZodString>;
659
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
660
+ }, z.core.$strict>;
661
+ export declare const AppTypeSchema: z.ZodEnum<{
662
+ standard: "standard";
663
+ resilient: "resilient";
664
+ enterprise: "enterprise";
665
+ tinkerer: "tinkerer";
666
+ lightweight: "lightweight";
667
+ custom: "custom";
668
+ }>;
669
+ export declare const PatternSchema: z.ZodEnum<{
670
+ payload: "payload";
671
+ nextjs: "nextjs";
672
+ }>;
673
+ export declare const ECSGeneratorSchema: z.ZodObject<{
674
+ appName: z.ZodString;
675
+ clusterName: z.ZodString;
676
+ containerPort: z.ZodNumber;
677
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
678
+ ecrRepository: z.ZodOptional<z.ZodString>;
679
+ capacityProvider: z.ZodOptional<z.ZodEnum<{
680
+ FARGATE: "FARGATE";
681
+ FARGATE_SPOT: "FARGATE_SPOT";
682
+ EC2: "EC2";
683
+ }>>;
684
+ useAppEcr: z.ZodOptional<z.ZodBoolean>;
685
+ desiredCount: z.ZodOptional<z.ZodNumber>;
686
+ cpu: z.ZodOptional<z.ZodNumber>;
687
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
688
+ minCapacity: z.ZodOptional<z.ZodNumber>;
689
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
690
+ ec2Config: z.ZodOptional<z.ZodObject<{
691
+ instanceType: z.ZodOptional<z.ZodString>;
692
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
693
+ ARM: "ARM";
694
+ STANDARD: "STANDARD";
695
+ }>>;
696
+ minCapacity: z.ZodOptional<z.ZodNumber>;
697
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
698
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
699
+ }, z.core.$strict>>;
700
+ connectionConfig: z.ZodOptional<z.ZodObject<{
701
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
702
+ }, z.core.$strict>>;
703
+ }, z.core.$strict>;
704
+ export declare const LambdaGeneratorSchema: z.ZodObject<{
705
+ appName: z.ZodString;
706
+ functionName: z.ZodString;
707
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
708
+ lambdaType: z.ZodOptional<z.ZodEnum<{
709
+ custom: "custom";
710
+ basic: "basic";
711
+ web: "web";
712
+ }>>;
713
+ ecrRepository: z.ZodOptional<z.ZodString>;
714
+ timeout: z.ZodOptional<z.ZodNumber>;
715
+ memory: z.ZodOptional<z.ZodNumber>;
716
+ enableFunctionUrl: z.ZodOptional<z.ZodBoolean>;
717
+ description: z.ZodOptional<z.ZodString>;
718
+ enableCors: z.ZodOptional<z.ZodBoolean>;
719
+ corsOrigins: z.ZodOptional<z.ZodString>;
720
+ corsHeaders: z.ZodOptional<z.ZodString>;
721
+ corsMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<{
722
+ GET: "GET";
723
+ POST: "POST";
724
+ PUT: "PUT";
725
+ DELETE: "DELETE";
726
+ HEAD: "HEAD";
727
+ OPTIONS: "OPTIONS";
728
+ PATCH: "PATCH";
729
+ }>>>;
730
+ corsCredentials: z.ZodOptional<z.ZodBoolean>;
731
+ connectionConfig: z.ZodOptional<z.ZodObject<{
732
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
733
+ }, z.core.$strict>>;
734
+ }, z.core.$strict>;
735
+ export declare const EC2GeneratorSchema: z.ZodObject<{
736
+ appName: z.ZodString;
737
+ instanceName: z.ZodString;
738
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
739
+ instanceType: z.ZodOptional<z.ZodString & z.ZodType<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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>>>;
740
+ enableSSH: z.ZodOptional<z.ZodBoolean>;
741
+ minCapacity: z.ZodOptional<z.ZodNumber>;
742
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
743
+ connectionConfig: z.ZodOptional<z.ZodObject<{
744
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
745
+ }, z.core.$strict>>;
746
+ }, z.core.$strict>;
747
+ /**
748
+ * Database generator schema using discriminated union.
749
+ * This ensures type-specific fields are only allowed for the correct database type:
750
+ * - Instance: instanceType, multiAz, readReplica
751
+ * - Aurora: writer, readers, backupRetention
752
+ * - GlobalAurora: primaryRegion (required!), secondaryRegions, enableGlobalWriteForwarding
753
+ */
754
+ export declare const DatabaseGeneratorSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
755
+ appName: z.ZodString;
756
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
757
+ databaseName: z.ZodString;
758
+ resourceName: z.ZodOptional<z.ZodString>;
759
+ connectionConfig: z.ZodOptional<z.ZodObject<{
760
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
761
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
762
+ }, z.core.$strict>>;
763
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
764
+ mode: z.ZodOptional<z.ZodEnum<{
765
+ standard: "standard";
766
+ advanced: "advanced";
767
+ }>>;
768
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
769
+ awsManaged: z.ZodLiteral<true>;
770
+ }, z.core.$strict>, z.ZodObject<{
771
+ useCMK: z.ZodLiteral<true>;
772
+ }, z.core.$strict>]>>;
773
+ }, z.core.$strict>]>>;
774
+ port: z.ZodOptional<z.ZodNumber>;
775
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
776
+ maxConnections: z.ZodOptional<z.ZodNumber>;
777
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
778
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
779
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
780
+ }, z.core.$strict>]>>;
781
+ credentials: z.ZodOptional<z.ZodObject<{
782
+ username: z.ZodOptional<z.ZodString>;
783
+ secretRotation: z.ZodOptional<z.ZodObject<{
784
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
785
+ }, z.core.$strict>>;
786
+ }, z.core.$strict>>;
787
+ encryption: z.ZodOptional<z.ZodObject<{
788
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
789
+ awsManaged: z.ZodLiteral<true>;
790
+ }, z.core.$strict>, z.ZodObject<{
791
+ useCMK: z.ZodLiteral<true>;
792
+ }, z.core.$strict>]>>;
793
+ }, z.core.$strict>>;
794
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
795
+ databaseType: z.ZodLiteral<"Instance">;
796
+ instanceType: z.ZodOptional<z.ZodString>;
797
+ multiAz: z.ZodOptional<z.ZodBoolean>;
798
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
799
+ instanceType: z.ZodOptional<z.ZodString>;
800
+ availabilityZone: z.ZodOptional<z.ZodString>;
801
+ }, z.core.$strict>]>>;
802
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
803
+ backupRetention: z.ZodOptional<z.ZodNumber>;
804
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
805
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
806
+ snapshotUsername: z.ZodOptional<z.ZodString>;
807
+ }, z.core.$strict>, z.ZodObject<{
808
+ appName: z.ZodString;
809
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
810
+ databaseName: z.ZodString;
811
+ resourceName: z.ZodOptional<z.ZodString>;
812
+ connectionConfig: z.ZodOptional<z.ZodObject<{
813
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
814
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
815
+ }, z.core.$strict>>;
816
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
817
+ mode: z.ZodOptional<z.ZodEnum<{
818
+ standard: "standard";
819
+ advanced: "advanced";
820
+ }>>;
821
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
822
+ awsManaged: z.ZodLiteral<true>;
823
+ }, z.core.$strict>, z.ZodObject<{
824
+ useCMK: z.ZodLiteral<true>;
825
+ }, z.core.$strict>]>>;
826
+ }, z.core.$strict>]>>;
827
+ port: z.ZodOptional<z.ZodNumber>;
828
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
829
+ maxConnections: z.ZodOptional<z.ZodNumber>;
830
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
831
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
832
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
833
+ }, z.core.$strict>]>>;
834
+ credentials: z.ZodOptional<z.ZodObject<{
835
+ username: z.ZodOptional<z.ZodString>;
836
+ secretRotation: z.ZodOptional<z.ZodObject<{
837
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
838
+ }, z.core.$strict>>;
839
+ }, z.core.$strict>>;
840
+ encryption: z.ZodOptional<z.ZodObject<{
841
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
842
+ awsManaged: z.ZodLiteral<true>;
843
+ }, z.core.$strict>, z.ZodObject<{
844
+ useCMK: z.ZodLiteral<true>;
845
+ }, z.core.$strict>]>>;
846
+ }, z.core.$strict>>;
847
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
848
+ databaseType: z.ZodLiteral<"Aurora">;
849
+ writer: z.ZodOptional<z.ZodObject<{
850
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
851
+ identifierSuffix: z.ZodOptional<z.ZodString>;
852
+ availabilityZone: z.ZodOptional<z.ZodString>;
853
+ }, z.core.$strict>>;
854
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
855
+ count: z.ZodOptional<z.ZodNumber>;
856
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
857
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
858
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
859
+ identifierSuffix: z.ZodOptional<z.ZodString>;
860
+ availabilityZone: z.ZodOptional<z.ZodString>;
861
+ }, z.core.$strict>>>;
862
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
863
+ }, z.core.$strict>]>>;
864
+ backupRetention: z.ZodOptional<z.ZodNumber>;
865
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
866
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
867
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
868
+ snapshotUsername: z.ZodOptional<z.ZodString>;
869
+ }, z.core.$strict>, z.ZodObject<{
870
+ appName: z.ZodString;
871
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
872
+ databaseName: z.ZodString;
873
+ resourceName: z.ZodOptional<z.ZodString>;
874
+ connectionConfig: z.ZodOptional<z.ZodObject<{
875
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
876
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
877
+ }, z.core.$strict>>;
878
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
879
+ mode: z.ZodOptional<z.ZodEnum<{
880
+ standard: "standard";
881
+ advanced: "advanced";
882
+ }>>;
883
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
884
+ awsManaged: z.ZodLiteral<true>;
885
+ }, z.core.$strict>, z.ZodObject<{
886
+ useCMK: z.ZodLiteral<true>;
887
+ }, z.core.$strict>]>>;
888
+ }, z.core.$strict>]>>;
889
+ port: z.ZodOptional<z.ZodNumber>;
890
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
891
+ maxConnections: z.ZodOptional<z.ZodNumber>;
892
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
893
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
894
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
895
+ }, z.core.$strict>]>>;
896
+ credentials: z.ZodOptional<z.ZodObject<{
897
+ username: z.ZodOptional<z.ZodString>;
898
+ secretRotation: z.ZodOptional<z.ZodObject<{
899
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
900
+ }, z.core.$strict>>;
901
+ }, z.core.$strict>>;
902
+ encryption: z.ZodOptional<z.ZodObject<{
903
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
904
+ awsManaged: z.ZodLiteral<true>;
905
+ }, z.core.$strict>, z.ZodObject<{
906
+ useCMK: z.ZodLiteral<true>;
907
+ }, z.core.$strict>]>>;
908
+ }, z.core.$strict>>;
909
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
910
+ databaseType: z.ZodLiteral<"GlobalAurora">;
911
+ primaryRegion: z.ZodString;
912
+ secondaryRegions: z.ZodOptional<z.ZodArray<z.ZodString>>;
913
+ globalClusterIdentifier: z.ZodOptional<z.ZodString>;
914
+ enableGlobalWriteForwarding: z.ZodOptional<z.ZodBoolean>;
915
+ writer: z.ZodOptional<z.ZodObject<{
916
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
917
+ identifierSuffix: z.ZodOptional<z.ZodString>;
918
+ availabilityZone: z.ZodOptional<z.ZodString>;
919
+ }, z.core.$strict>>;
920
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
921
+ count: z.ZodOptional<z.ZodNumber>;
922
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
923
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
924
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
925
+ identifierSuffix: z.ZodOptional<z.ZodString>;
926
+ availabilityZone: z.ZodOptional<z.ZodString>;
927
+ }, z.core.$strict>>>;
928
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
929
+ }, z.core.$strict>]>>;
930
+ backupRetention: z.ZodOptional<z.ZodNumber>;
931
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
932
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
933
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
934
+ snapshotUsername: z.ZodOptional<z.ZodString>;
935
+ }, z.core.$strict>], "databaseType">;
936
+ export declare const DatabaseGeneratorSchemaFromUI: z.ZodDiscriminatedUnion<[z.ZodObject<{
937
+ appName: z.ZodString;
938
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
939
+ databaseName: z.ZodString;
940
+ connectionConfig: z.ZodOptional<z.ZodObject<{
941
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
942
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
943
+ }, z.core.$strict>>;
944
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
945
+ mode: z.ZodOptional<z.ZodEnum<{
946
+ standard: "standard";
947
+ advanced: "advanced";
948
+ }>>;
949
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
950
+ awsManaged: z.ZodLiteral<true>;
951
+ }, z.core.$strict>, z.ZodObject<{
952
+ useCMK: z.ZodLiteral<true>;
953
+ }, z.core.$strict>]>>;
954
+ }, z.core.$strict>]>>;
955
+ port: z.ZodOptional<z.ZodNumber>;
956
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
957
+ maxConnections: z.ZodOptional<z.ZodNumber>;
958
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
959
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
960
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
961
+ }, z.core.$strict>]>>;
962
+ credentials: z.ZodOptional<z.ZodObject<{
963
+ username: z.ZodOptional<z.ZodString>;
964
+ secretRotation: z.ZodOptional<z.ZodObject<{
965
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
966
+ }, z.core.$strict>>;
967
+ }, z.core.$strict>>;
968
+ encryption: z.ZodOptional<z.ZodObject<{
969
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
970
+ awsManaged: z.ZodLiteral<true>;
971
+ }, z.core.$strict>, z.ZodObject<{
972
+ useCMK: z.ZodLiteral<true>;
973
+ }, z.core.$strict>]>>;
974
+ }, z.core.$strict>>;
975
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
976
+ resourceName: z.ZodString;
977
+ databaseType: z.ZodLiteral<"Instance">;
978
+ instanceType: z.ZodOptional<z.ZodString>;
979
+ multiAz: z.ZodOptional<z.ZodBoolean>;
980
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
981
+ instanceType: z.ZodOptional<z.ZodString>;
982
+ availabilityZone: z.ZodOptional<z.ZodString>;
983
+ }, z.core.$strict>]>>;
984
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
985
+ backupRetention: z.ZodOptional<z.ZodNumber>;
986
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
987
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
988
+ snapshotUsername: z.ZodOptional<z.ZodString>;
989
+ }, z.core.$strict>, z.ZodObject<{
990
+ appName: z.ZodString;
991
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
992
+ databaseName: z.ZodString;
993
+ connectionConfig: z.ZodOptional<z.ZodObject<{
994
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
995
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
996
+ }, z.core.$strict>>;
997
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
998
+ mode: z.ZodOptional<z.ZodEnum<{
999
+ standard: "standard";
1000
+ advanced: "advanced";
1001
+ }>>;
1002
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1003
+ awsManaged: z.ZodLiteral<true>;
1004
+ }, z.core.$strict>, z.ZodObject<{
1005
+ useCMK: z.ZodLiteral<true>;
1006
+ }, z.core.$strict>]>>;
1007
+ }, z.core.$strict>]>>;
1008
+ port: z.ZodOptional<z.ZodNumber>;
1009
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1010
+ maxConnections: z.ZodOptional<z.ZodNumber>;
1011
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
1012
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
1013
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
1014
+ }, z.core.$strict>]>>;
1015
+ credentials: z.ZodOptional<z.ZodObject<{
1016
+ username: z.ZodOptional<z.ZodString>;
1017
+ secretRotation: z.ZodOptional<z.ZodObject<{
1018
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
1019
+ }, z.core.$strict>>;
1020
+ }, z.core.$strict>>;
1021
+ encryption: z.ZodOptional<z.ZodObject<{
1022
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1023
+ awsManaged: z.ZodLiteral<true>;
1024
+ }, z.core.$strict>, z.ZodObject<{
1025
+ useCMK: z.ZodLiteral<true>;
1026
+ }, z.core.$strict>]>>;
1027
+ }, z.core.$strict>>;
1028
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
1029
+ resourceName: z.ZodString;
1030
+ databaseType: z.ZodLiteral<"Aurora">;
1031
+ writer: z.ZodOptional<z.ZodObject<{
1032
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1033
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1034
+ availabilityZone: z.ZodOptional<z.ZodString>;
1035
+ }, z.core.$strict>>;
1036
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1037
+ count: z.ZodOptional<z.ZodNumber>;
1038
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
1039
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
1040
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1041
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1042
+ availabilityZone: z.ZodOptional<z.ZodString>;
1043
+ }, z.core.$strict>>>;
1044
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1045
+ }, z.core.$strict>]>>;
1046
+ backupRetention: z.ZodOptional<z.ZodNumber>;
1047
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
1048
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
1049
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
1050
+ snapshotUsername: z.ZodOptional<z.ZodString>;
1051
+ }, z.core.$strict>, z.ZodObject<{
1052
+ appName: z.ZodString;
1053
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
1054
+ databaseName: z.ZodString;
1055
+ connectionConfig: z.ZodOptional<z.ZodObject<{
1056
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
1057
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
1058
+ }, z.core.$strict>>;
1059
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1060
+ mode: z.ZodOptional<z.ZodEnum<{
1061
+ standard: "standard";
1062
+ advanced: "advanced";
1063
+ }>>;
1064
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1065
+ awsManaged: z.ZodLiteral<true>;
1066
+ }, z.core.$strict>, z.ZodObject<{
1067
+ useCMK: z.ZodLiteral<true>;
1068
+ }, z.core.$strict>]>>;
1069
+ }, z.core.$strict>]>>;
1070
+ port: z.ZodOptional<z.ZodNumber>;
1071
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1072
+ maxConnections: z.ZodOptional<z.ZodNumber>;
1073
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
1074
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
1075
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
1076
+ }, z.core.$strict>]>>;
1077
+ credentials: z.ZodOptional<z.ZodObject<{
1078
+ username: z.ZodOptional<z.ZodString>;
1079
+ secretRotation: z.ZodOptional<z.ZodObject<{
1080
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
1081
+ }, z.core.$strict>>;
1082
+ }, z.core.$strict>>;
1083
+ encryption: z.ZodOptional<z.ZodObject<{
1084
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1085
+ awsManaged: z.ZodLiteral<true>;
1086
+ }, z.core.$strict>, z.ZodObject<{
1087
+ useCMK: z.ZodLiteral<true>;
1088
+ }, z.core.$strict>]>>;
1089
+ }, z.core.$strict>>;
1090
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
1091
+ resourceName: z.ZodString;
1092
+ databaseType: z.ZodLiteral<"GlobalAurora">;
1093
+ primaryRegion: z.ZodString;
1094
+ secondaryRegions: z.ZodOptional<z.ZodArray<z.ZodString>>;
1095
+ globalClusterIdentifier: z.ZodOptional<z.ZodString>;
1096
+ enableGlobalWriteForwarding: z.ZodOptional<z.ZodBoolean>;
1097
+ writer: z.ZodOptional<z.ZodObject<{
1098
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1099
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1100
+ availabilityZone: z.ZodOptional<z.ZodString>;
1101
+ }, z.core.$strict>>;
1102
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1103
+ count: z.ZodOptional<z.ZodNumber>;
1104
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
1105
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
1106
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1107
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1108
+ availabilityZone: z.ZodOptional<z.ZodString>;
1109
+ }, z.core.$strict>>>;
1110
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1111
+ }, z.core.$strict>]>>;
1112
+ backupRetention: z.ZodOptional<z.ZodNumber>;
1113
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
1114
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
1115
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
1116
+ snapshotUsername: z.ZodOptional<z.ZodString>;
1117
+ }, z.core.$strict>], "databaseType">;
1118
+ /**
1119
+ * Service name schema.
1120
+ * Must be a valid identifier for ECS services.
1121
+ */
1122
+ export declare const EcsServiceNameSchema: z.ZodString;
1123
+ /**
1124
+ * Cluster-level configuration.
1125
+ * Controls the shared ALB for all services.
1126
+ */
1127
+ export declare const EcsClusterConfigSchema: z.ZodObject<{
1128
+ domain: z.ZodOptional<z.ZodString>;
1129
+ loadBalancer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodLiteral<"public">, z.ZodLiteral<"internal">]>>;
1130
+ directAccess: z.ZodOptional<z.ZodBoolean>;
1131
+ }, z.core.$strict>;
1132
+ /**
1133
+ * Routing configuration for path/host-based routing on the ALB.
1134
+ * Required when cluster has multiple services with ports.
1135
+ */
1136
+ export declare const EcsRoutingConfigSchema: z.ZodObject<{
1137
+ path: z.ZodOptional<z.ZodString>;
1138
+ host: z.ZodOptional<z.ZodString>;
1139
+ priority: z.ZodOptional<z.ZodNumber>;
1140
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1141
+ }, z.core.$strict>;
1142
+ /**
1143
+ * Scaling configuration for ECS services.
1144
+ */
1145
+ export declare const EcsScalingConfigSchema: z.ZodObject<{
1146
+ desiredCount: z.ZodOptional<z.ZodNumber>;
1147
+ minCapacity: z.ZodOptional<z.ZodNumber>;
1148
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
1149
+ scalingType: z.ZodOptional<z.ZodEnum<{
1150
+ CPU: "CPU";
1151
+ MEMORY: "MEMORY";
1152
+ }>>;
1153
+ }, z.core.$strict>;
1154
+ /**
1155
+ * Configuration for a service in an ECS cluster.
1156
+ * Each service gets its own task definition, scaling, and target group.
1157
+ */
1158
+ export declare const EcsServiceConfigSchema: z.ZodObject<{
1159
+ name: z.ZodString;
1160
+ dockerfilePath: z.ZodOptional<z.ZodString>;
1161
+ dockerTarget: z.ZodOptional<z.ZodString>;
1162
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
1163
+ needsStorageConnection: z.ZodOptional<z.ZodBoolean>;
1164
+ image: z.ZodOptional<z.ZodString>;
1165
+ containers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1166
+ name: z.ZodOptional<z.ZodString>;
1167
+ image: z.ZodOptional<z.ZodString>;
1168
+ port: z.ZodOptional<z.ZodNumber>;
1169
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
1170
+ __identifier: z.ZodString;
1171
+ }, z.core.$strict>, z.ZodObject<{
1172
+ __expression: z.ZodString;
1173
+ }, z.core.$strict>, z.ZodObject<{
1174
+ __call: z.ZodString;
1175
+ }, z.core.$strict>]>]>>>;
1176
+ secretsImport: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1177
+ id: z.ZodString;
1178
+ name: z.ZodString;
1179
+ field: z.ZodOptional<z.ZodString>;
1180
+ }, z.core.$strict>>>;
1181
+ command: z.ZodOptional<z.ZodArray<z.ZodString>>;
1182
+ entryPoint: z.ZodOptional<z.ZodArray<z.ZodString>>;
1183
+ essential: z.ZodOptional<z.ZodBoolean>;
1184
+ healthCheck: z.ZodOptional<z.ZodObject<{
1185
+ command: z.ZodArray<z.ZodString>;
1186
+ interval: z.ZodOptional<z.ZodNumber>;
1187
+ timeout: z.ZodOptional<z.ZodNumber>;
1188
+ retries: z.ZodOptional<z.ZodNumber>;
1189
+ startPeriod: z.ZodOptional<z.ZodNumber>;
1190
+ }, z.core.$strict>>;
1191
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
1192
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1193
+ key: z.ZodString;
1194
+ sourceText: z.ZodString;
1195
+ }, z.core.$strict>>>;
1196
+ }, z.core.$strict>>>;
1197
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1198
+ path: z.ZodOptional<z.ZodString>;
1199
+ host: z.ZodOptional<z.ZodString>;
1200
+ priority: z.ZodOptional<z.ZodNumber>;
1201
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1202
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
1203
+ path: z.ZodOptional<z.ZodString>;
1204
+ host: z.ZodOptional<z.ZodString>;
1205
+ priority: z.ZodOptional<z.ZodNumber>;
1206
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1207
+ }, z.core.$strict>>]>>;
1208
+ cpu: z.ZodOptional<z.ZodNumber>;
1209
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
1210
+ desiredCount: z.ZodOptional<z.ZodNumber>;
1211
+ scaling: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1212
+ desiredCount: z.ZodOptional<z.ZodNumber>;
1213
+ minCapacity: z.ZodOptional<z.ZodNumber>;
1214
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
1215
+ scalingType: z.ZodOptional<z.ZodEnum<{
1216
+ CPU: "CPU";
1217
+ MEMORY: "MEMORY";
1218
+ }>>;
1219
+ }, z.core.$strict>]>>;
1220
+ capacityProvider: z.ZodEnum<{
1221
+ FARGATE: "FARGATE";
1222
+ FARGATE_SPOT: "FARGATE_SPOT";
1223
+ EC2: "EC2";
1224
+ }>;
1225
+ ec2Config: z.ZodOptional<z.ZodObject<{
1226
+ instanceType: z.ZodOptional<z.ZodString>;
1227
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
1228
+ ARM: "ARM";
1229
+ STANDARD: "STANDARD";
1230
+ }>>;
1231
+ minCapacity: z.ZodOptional<z.ZodNumber>;
1232
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
1233
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
1234
+ }, z.core.$strict>>;
1235
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
1236
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1237
+ key: z.ZodString;
1238
+ sourceText: z.ZodString;
1239
+ }, z.core.$strict>>>;
1240
+ }, z.core.$strict>;
1241
+ /**
1242
+ * Compute resource plan schema.
1243
+ * Used by the code generator to produce infrastructure code.
1244
+ */
1245
+ export declare const ComputeResourcePlanSchema: z.ZodObject<{
1246
+ name: z.ZodString;
1247
+ type: z.ZodEnum<{
1248
+ ecs: "ecs";
1249
+ lambda: "lambda";
1250
+ ec2: "ec2";
1251
+ }>;
1252
+ needsConnection: z.ZodBoolean;
1253
+ connectedDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
1254
+ connectedStorage: z.ZodOptional<z.ZodArray<z.ZodString>>;
1255
+ cluster: z.ZodOptional<z.ZodObject<{
1256
+ domain: z.ZodOptional<z.ZodString>;
1257
+ loadBalancer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodLiteral<"public">, z.ZodLiteral<"internal">]>>;
1258
+ directAccess: z.ZodOptional<z.ZodBoolean>;
1259
+ }, z.core.$strict>>;
1260
+ services: z.ZodOptional<z.ZodArray<z.ZodObject<{
1261
+ name: z.ZodString;
1262
+ dockerfilePath: z.ZodOptional<z.ZodString>;
1263
+ dockerTarget: z.ZodOptional<z.ZodString>;
1264
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
1265
+ needsStorageConnection: z.ZodOptional<z.ZodBoolean>;
1266
+ image: z.ZodOptional<z.ZodString>;
1267
+ containers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1268
+ name: z.ZodOptional<z.ZodString>;
1269
+ image: z.ZodOptional<z.ZodString>;
1270
+ port: z.ZodOptional<z.ZodNumber>;
1271
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
1272
+ __identifier: z.ZodString;
1273
+ }, z.core.$strict>, z.ZodObject<{
1274
+ __expression: z.ZodString;
1275
+ }, z.core.$strict>, z.ZodObject<{
1276
+ __call: z.ZodString;
1277
+ }, z.core.$strict>]>]>>>;
1278
+ secretsImport: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1279
+ id: z.ZodString;
1280
+ name: z.ZodString;
1281
+ field: z.ZodOptional<z.ZodString>;
1282
+ }, z.core.$strict>>>;
1283
+ command: z.ZodOptional<z.ZodArray<z.ZodString>>;
1284
+ entryPoint: z.ZodOptional<z.ZodArray<z.ZodString>>;
1285
+ essential: z.ZodOptional<z.ZodBoolean>;
1286
+ healthCheck: z.ZodOptional<z.ZodObject<{
1287
+ command: z.ZodArray<z.ZodString>;
1288
+ interval: z.ZodOptional<z.ZodNumber>;
1289
+ timeout: z.ZodOptional<z.ZodNumber>;
1290
+ retries: z.ZodOptional<z.ZodNumber>;
1291
+ startPeriod: z.ZodOptional<z.ZodNumber>;
1292
+ }, z.core.$strict>>;
1293
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
1294
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1295
+ key: z.ZodString;
1296
+ sourceText: z.ZodString;
1297
+ }, z.core.$strict>>>;
1298
+ }, z.core.$strict>>>;
1299
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1300
+ path: z.ZodOptional<z.ZodString>;
1301
+ host: z.ZodOptional<z.ZodString>;
1302
+ priority: z.ZodOptional<z.ZodNumber>;
1303
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1304
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
1305
+ path: z.ZodOptional<z.ZodString>;
1306
+ host: z.ZodOptional<z.ZodString>;
1307
+ priority: z.ZodOptional<z.ZodNumber>;
1308
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1309
+ }, z.core.$strict>>]>>;
1310
+ cpu: z.ZodOptional<z.ZodNumber>;
1311
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
1312
+ desiredCount: z.ZodOptional<z.ZodNumber>;
1313
+ scaling: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1314
+ desiredCount: z.ZodOptional<z.ZodNumber>;
1315
+ minCapacity: z.ZodOptional<z.ZodNumber>;
1316
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
1317
+ scalingType: z.ZodOptional<z.ZodEnum<{
1318
+ CPU: "CPU";
1319
+ MEMORY: "MEMORY";
1320
+ }>>;
1321
+ }, z.core.$strict>]>>;
1322
+ capacityProvider: z.ZodEnum<{
1323
+ FARGATE: "FARGATE";
1324
+ FARGATE_SPOT: "FARGATE_SPOT";
1325
+ EC2: "EC2";
1326
+ }>;
1327
+ ec2Config: z.ZodOptional<z.ZodObject<{
1328
+ instanceType: z.ZodOptional<z.ZodString>;
1329
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
1330
+ ARM: "ARM";
1331
+ STANDARD: "STANDARD";
1332
+ }>>;
1333
+ minCapacity: z.ZodOptional<z.ZodNumber>;
1334
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
1335
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
1336
+ }, z.core.$strict>>;
1337
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
1338
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1339
+ key: z.ZodString;
1340
+ sourceText: z.ZodString;
1341
+ }, z.core.$strict>>>;
1342
+ }, z.core.$strict>>>;
1343
+ dockerfilePath: z.ZodOptional<z.ZodString>;
1344
+ deployment: z.ZodOptional<z.ZodEnum<{
1345
+ code: "code";
1346
+ container: "container";
1347
+ }>>;
1348
+ codePath: z.ZodOptional<z.ZodString>;
1349
+ timeout: z.ZodOptional<z.ZodNumber>;
1350
+ memory: z.ZodOptional<z.ZodNumber>;
1351
+ handler: z.ZodOptional<z.ZodString>;
1352
+ runtime: z.ZodOptional<z.ZodString>;
1353
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
1354
+ __identifier: z.ZodString;
1355
+ }, z.core.$strict>, z.ZodObject<{
1356
+ __expression: z.ZodString;
1357
+ }, z.core.$strict>, z.ZodObject<{
1358
+ __call: z.ZodString;
1359
+ }, z.core.$strict>]>]>>>;
1360
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
1361
+ __identifier: z.ZodString;
1362
+ }, z.core.$strict>, z.ZodObject<{
1363
+ __expression: z.ZodString;
1364
+ }, z.core.$strict>, z.ZodObject<{
1365
+ __call: z.ZodString;
1366
+ }, z.core.$strict>]>]>>>;
1367
+ eventSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
1368
+ sourceType: z.ZodEnum<{
1369
+ dynamodb: "dynamodb";
1370
+ sqs: "sqs";
1371
+ eventbridge: "eventbridge";
1372
+ }>;
1373
+ sourceRef: z.ZodString;
1374
+ batchSize: z.ZodOptional<z.ZodNumber>;
1375
+ startingPosition: z.ZodOptional<z.ZodEnum<{
1376
+ TRIM_HORIZON: "TRIM_HORIZON";
1377
+ LATEST: "LATEST";
1378
+ }>>;
1379
+ maxBatchingWindow: z.ZodOptional<z.ZodNumber>;
1380
+ reportBatchItemFailures: z.ZodOptional<z.ZodBoolean>;
1381
+ }, z.core.$strict>>>;
1382
+ functionUrl: z.ZodOptional<z.ZodObject<{
1383
+ authType: z.ZodEnum<{
1384
+ NONE: "NONE";
1385
+ AWS_IAM: "AWS_IAM";
1386
+ }>;
1387
+ }, z.core.$strict>>;
1388
+ description: z.ZodOptional<z.ZodString>;
1389
+ scheduleExpression: z.ZodOptional<z.ZodString>;
1390
+ architecture: z.ZodOptional<z.ZodEnum<{
1391
+ ARM_64: "ARM_64";
1392
+ X86_64: "X86_64";
1393
+ }>>;
1394
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1395
+ functionName: z.ZodOptional<z.ZodString>;
1396
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
1397
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
1398
+ instanceType: z.ZodOptional<z.ZodString & z.ZodType<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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>>>;
1399
+ enableSSH: z.ZodOptional<z.ZodBoolean>;
1400
+ keyName: z.ZodOptional<z.ZodString>;
1401
+ userData: z.ZodOptional<z.ZodString>;
1402
+ securityGroups: z.ZodOptional<z.ZodArray<z.ZodString>>;
1403
+ variableName: z.ZodOptional<z.ZodString>;
1404
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1405
+ key: z.ZodString;
1406
+ sourceText: z.ZodString;
1407
+ }, z.core.$strict>>>;
1408
+ }, z.core.$strict>;
1409
+ /**
1410
+ * DynamoDB table resource plan schema (for OpenNext patterns)
1411
+ */
1412
+ export declare const DynamoDBResourcePlanSchema: z.ZodObject<{
1413
+ name: z.ZodString;
1414
+ partitionKey: z.ZodObject<{
1415
+ name: z.ZodString;
1416
+ type: z.ZodEnum<{
1417
+ S: "S";
1418
+ N: "N";
1419
+ B: "B";
1420
+ }>;
1421
+ }, z.core.$strict>;
1422
+ sortKey: z.ZodOptional<z.ZodObject<{
1423
+ name: z.ZodString;
1424
+ type: z.ZodEnum<{
1425
+ S: "S";
1426
+ N: "N";
1427
+ B: "B";
1428
+ }>;
1429
+ }, z.core.$strict>>;
1430
+ globalSecondaryIndexes: z.ZodOptional<z.ZodArray<z.ZodObject<{
1431
+ indexName: z.ZodString;
1432
+ partitionKey: z.ZodObject<{
1433
+ name: z.ZodString;
1434
+ type: z.ZodEnum<{
1435
+ S: "S";
1436
+ N: "N";
1437
+ B: "B";
1438
+ }>;
1439
+ }, z.core.$strict>;
1440
+ sortKey: z.ZodOptional<z.ZodObject<{
1441
+ name: z.ZodString;
1442
+ type: z.ZodEnum<{
1443
+ S: "S";
1444
+ N: "N";
1445
+ B: "B";
1446
+ }>;
1447
+ }, z.core.$strict>>;
1448
+ }, z.core.$strict>>>;
1449
+ ttlAttribute: z.ZodOptional<z.ZodString>;
1450
+ stream: z.ZodOptional<z.ZodBoolean>;
1451
+ variableName: z.ZodOptional<z.ZodString>;
1452
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1453
+ key: z.ZodString;
1454
+ sourceText: z.ZodString;
1455
+ }, z.core.$strict>>>;
1456
+ }, z.core.$strict>;
1457
+ /**
1458
+ * SQS queue resource plan schema (for OpenNext patterns)
1459
+ */
1460
+ export declare const SQSResourcePlanSchema: z.ZodObject<{
1461
+ name: z.ZodString;
1462
+ queueType: z.ZodDefault<z.ZodEnum<{
1463
+ standard: "standard";
1464
+ fifo: "fifo";
1465
+ }>>;
1466
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
1467
+ retentionPeriod: z.ZodOptional<z.ZodNumber>;
1468
+ contentBasedDeduplication: z.ZodOptional<z.ZodBoolean>;
1469
+ variableName: z.ZodOptional<z.ZodString>;
1470
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1471
+ key: z.ZodString;
1472
+ sourceText: z.ZodString;
1473
+ }, z.core.$strict>>>;
1474
+ }, z.core.$strict>;
1475
+ /**
1476
+ * Access gate configuration for CDN distributions.
1477
+ * Extensible discriminated union — currently supports basic-auth,
1478
+ * future types (cognito, oidc, ip-allowlist) can be added.
1479
+ */
1480
+ export declare const AccessGateSchema: z.ZodObject<{
1481
+ type: z.ZodLiteral<"basic-auth">;
1482
+ username: z.ZodString;
1483
+ password: z.ZodString;
1484
+ }, z.core.$strict>;
1485
+ export type AccessGateConfig = z.infer<typeof AccessGateSchema>;
1486
+ /**
1487
+ * CDN resource plan schema (for OpenNext patterns)
1488
+ */
1489
+ export declare const CDNResourcePlanSchema: z.ZodObject<{
1490
+ name: z.ZodString;
1491
+ defaultOriginRef: z.ZodString;
1492
+ behaviours: z.ZodOptional<z.ZodArray<z.ZodObject<{
1493
+ pathPattern: z.ZodString;
1494
+ originRef: z.ZodString;
1495
+ cachePolicy: z.ZodOptional<z.ZodEnum<{
1496
+ CACHING_OPTIMIZED: "CACHING_OPTIMIZED";
1497
+ CACHING_DISABLED: "CACHING_DISABLED";
1498
+ }>>;
1499
+ }, z.core.$strict>>>;
1500
+ customDomain: z.ZodOptional<z.ZodString>;
1501
+ certificateArn: z.ZodOptional<z.ZodString>;
1502
+ accessGate: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
1503
+ type: z.ZodLiteral<"basic-auth">;
1504
+ username: z.ZodString;
1505
+ password: z.ZodString;
1506
+ }, z.core.$strict>]>>;
1507
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
1508
+ key: z.ZodString;
1509
+ sourceText: z.ZodString;
1510
+ }, z.core.$strict>>>;
1511
+ }, z.core.$strict>;
1512
+ export declare const CdnGeneratorSchema: z.ZodObject<{
1513
+ appName: z.ZodString;
1514
+ name: z.ZodOptional<z.ZodString>;
1515
+ defaultOriginRef: z.ZodString;
1516
+ behaviours: z.ZodOptional<z.ZodArray<z.ZodObject<{
1517
+ pathPattern: z.ZodString;
1518
+ originRef: z.ZodString;
1519
+ cachePolicy: z.ZodOptional<z.ZodEnum<{
1520
+ CACHING_OPTIMIZED: "CACHING_OPTIMIZED";
1521
+ CACHING_DISABLED: "CACHING_DISABLED";
1522
+ }>>;
1523
+ }, z.core.$strict>>>;
1524
+ customDomain: z.ZodOptional<z.ZodString>;
1525
+ certificateArn: z.ZodOptional<z.ZodString>;
1526
+ accessGate: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
1527
+ type: z.ZodLiteral<"basic-auth">;
1528
+ username: z.ZodString;
1529
+ password: z.ZodString;
1530
+ }, z.core.$strict>]>>;
1531
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
1532
+ }, z.core.$strict>;
1533
+ export type CdnGeneratorOptions = z.infer<typeof CdnGeneratorSchema>;
1534
+ /**
1535
+ * Schema for adding a service to an existing ECS cluster.
1536
+ * Used by the `fjall add service` command.
1537
+ */
1538
+ export declare const AddServiceGeneratorSchema: z.ZodObject<{
1539
+ appName: z.ZodString;
1540
+ clusterName: z.ZodString;
1541
+ serviceName: z.ZodString;
1542
+ capacityProvider: z.ZodEnum<{
1543
+ FARGATE: "FARGATE";
1544
+ FARGATE_SPOT: "FARGATE_SPOT";
1545
+ EC2: "EC2";
1546
+ }>;
1547
+ containerPort: z.ZodOptional<z.ZodNumber>;
1548
+ cpu: z.ZodOptional<z.ZodNumber>;
1549
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
1550
+ desiredCount: z.ZodOptional<z.ZodNumber>;
1551
+ ec2Config: z.ZodOptional<z.ZodObject<{
1552
+ instanceType: z.ZodOptional<z.ZodString>;
1553
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
1554
+ ARM: "ARM";
1555
+ STANDARD: "STANDARD";
1556
+ }>>;
1557
+ minCapacity: z.ZodOptional<z.ZodNumber>;
1558
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
1559
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
1560
+ }, z.core.$strict>>;
1561
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1562
+ path: z.ZodOptional<z.ZodString>;
1563
+ host: z.ZodOptional<z.ZodString>;
1564
+ priority: z.ZodOptional<z.ZodNumber>;
1565
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1566
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
1567
+ path: z.ZodOptional<z.ZodString>;
1568
+ host: z.ZodOptional<z.ZodString>;
1569
+ priority: z.ZodOptional<z.ZodNumber>;
1570
+ healthCheckPath: z.ZodOptional<z.ZodString>;
1571
+ }, z.core.$strict>>]>>;
1572
+ dockerfilePath: z.ZodOptional<z.ZodString>;
1573
+ dockerTarget: z.ZodOptional<z.ZodString>;
1574
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
1575
+ connectionConfig: z.ZodOptional<z.ZodObject<{
1576
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
1577
+ }, z.core.$strict>>;
1578
+ }, z.core.$strict>;
1579
+ export type AddServiceGeneratorOptions = z.infer<typeof AddServiceGeneratorSchema>;
1580
+ /**
1581
+ * Schema for adding RDS Proxy to an existing database.
1582
+ * Used by the `fjall add proxy` command.
1583
+ */
1584
+ export declare const AddProxyGeneratorSchema: z.ZodObject<{
1585
+ appName: z.ZodString;
1586
+ databaseName: z.ZodString;
1587
+ maxConnections: z.ZodOptional<z.ZodNumber>;
1588
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
1589
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
1590
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
1591
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
1592
+ }, z.core.$strict>;
1593
+ export type AddProxyGeneratorOptions = z.infer<typeof AddProxyGeneratorSchema>;
1594
+ /**
1595
+ * Pattern Lambda configuration for individual functions.
1596
+ */
1597
+ export declare const PatternLambdaConfigSchema: z.ZodObject<{
1598
+ memorySize: z.ZodOptional<z.ZodNumber>;
1599
+ timeout: z.ZodOptional<z.ZodNumber>;
1600
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1601
+ }, z.core.$strict>;
1602
+ /**
1603
+ * Full Payload database configuration for pattern.
1604
+ * Exposes ALL underlying DatabaseFactory props with pattern-specific defaults.
1605
+ */
1606
+ export declare const PayloadDatabaseConfigSchema: z.ZodObject<{
1607
+ type: z.ZodOptional<z.ZodEnum<{
1608
+ Aurora: "Aurora";
1609
+ Instance: "Instance";
1610
+ }>>;
1611
+ databaseName: z.ZodOptional<z.ZodString>;
1612
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
1613
+ postgresql: "postgresql";
1614
+ mysql: "mysql";
1615
+ }>>;
1616
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
1617
+ backupRetention: z.ZodOptional<z.ZodNumber>;
1618
+ port: z.ZodOptional<z.ZodNumber>;
1619
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
1620
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
1621
+ instanceType: z.ZodOptional<z.ZodString>;
1622
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
1623
+ multiAz: z.ZodOptional<z.ZodBoolean>;
1624
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1625
+ instanceType: z.ZodOptional<z.ZodString>;
1626
+ availabilityZone: z.ZodOptional<z.ZodString>;
1627
+ }, z.core.$strict>]>>;
1628
+ writer: z.ZodOptional<z.ZodObject<{
1629
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1630
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1631
+ availabilityZone: z.ZodOptional<z.ZodString>;
1632
+ }, z.core.$strict>>;
1633
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1634
+ count: z.ZodOptional<z.ZodNumber>;
1635
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
1636
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
1637
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1638
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1639
+ availabilityZone: z.ZodOptional<z.ZodString>;
1640
+ }, z.core.$strict>>>;
1641
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1642
+ }, z.core.$strict>]>>;
1643
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
1644
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
1645
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
1646
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1647
+ mode: z.ZodOptional<z.ZodEnum<{
1648
+ standard: "standard";
1649
+ advanced: "advanced";
1650
+ }>>;
1651
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1652
+ awsManaged: z.ZodLiteral<true>;
1653
+ }, z.core.$strict>, z.ZodObject<{
1654
+ useCMK: z.ZodLiteral<true>;
1655
+ }, z.core.$strict>]>>;
1656
+ }, z.core.$strict>]>>;
1657
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1658
+ maxConnections: z.ZodOptional<z.ZodNumber>;
1659
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
1660
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
1661
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
1662
+ }, z.core.$strict>]>>;
1663
+ credentials: z.ZodOptional<z.ZodObject<{
1664
+ username: z.ZodOptional<z.ZodString>;
1665
+ secretRotation: z.ZodOptional<z.ZodObject<{
1666
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
1667
+ }, z.core.$strict>>;
1668
+ }, z.core.$strict>>;
1669
+ encryption: z.ZodOptional<z.ZodObject<{
1670
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1671
+ awsManaged: z.ZodLiteral<true>;
1672
+ }, z.core.$strict>, z.ZodObject<{
1673
+ useCMK: z.ZodLiteral<true>;
1674
+ }, z.core.$strict>]>>;
1675
+ }, z.core.$strict>>;
1676
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
1677
+ snapshotUsername: z.ZodOptional<z.ZodString>;
1678
+ }, z.core.$strict>;
1679
+ /**
1680
+ * Full Payload compute configuration for pattern.
1681
+ * Allows per-function configuration for each Lambda in the pattern.
1682
+ */
1683
+ export declare const PayloadComputeConfigSchema: z.ZodObject<{
1684
+ server: z.ZodOptional<z.ZodObject<{
1685
+ memorySize: z.ZodOptional<z.ZodNumber>;
1686
+ timeout: z.ZodOptional<z.ZodNumber>;
1687
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1688
+ }, z.core.$strict>>;
1689
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
1690
+ memorySize: z.ZodOptional<z.ZodNumber>;
1691
+ timeout: z.ZodOptional<z.ZodNumber>;
1692
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1693
+ }, z.core.$strict>>;
1694
+ revalidation: z.ZodOptional<z.ZodObject<{
1695
+ memorySize: z.ZodOptional<z.ZodNumber>;
1696
+ timeout: z.ZodOptional<z.ZodNumber>;
1697
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1698
+ }, z.core.$strict>>;
1699
+ }, z.core.$strict>;
1700
+ /**
1701
+ * Pattern storage bucket configuration.
1702
+ */
1703
+ export declare const PatternStorageBucketConfigSchema: z.ZodObject<{
1704
+ versioned: z.ZodOptional<z.ZodBoolean>;
1705
+ }, z.core.$strict>;
1706
+ /**
1707
+ * Full Payload storage configuration for pattern.
1708
+ * Allows per-bucket configuration for each S3 bucket in the pattern.
1709
+ */
1710
+ export declare const PayloadStorageConfigSchema: z.ZodObject<{
1711
+ assets: z.ZodOptional<z.ZodObject<{
1712
+ versioned: z.ZodOptional<z.ZodBoolean>;
1713
+ }, z.core.$strict>>;
1714
+ cache: z.ZodOptional<z.ZodObject<{
1715
+ versioned: z.ZodOptional<z.ZodBoolean>;
1716
+ }, z.core.$strict>>;
1717
+ media: z.ZodOptional<z.ZodObject<{
1718
+ versioned: z.ZodOptional<z.ZodBoolean>;
1719
+ }, z.core.$strict>>;
1720
+ }, z.core.$strict>;
1721
+ /**
1722
+ * Pattern queue configuration for messaging.
1723
+ */
1724
+ export declare const PatternQueueConfigSchema: z.ZodObject<{
1725
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
1726
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
1727
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
1728
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
1729
+ enabled: z.ZodOptional<z.ZodBoolean>;
1730
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
1731
+ }, z.core.$strict>]>>;
1732
+ }, z.core.$strict>;
1733
+ /**
1734
+ * Full Payload messaging configuration for pattern.
1735
+ */
1736
+ export declare const PayloadMessagingConfigSchema: z.ZodObject<{
1737
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
1738
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
1739
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
1740
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
1741
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
1742
+ enabled: z.ZodOptional<z.ZodBoolean>;
1743
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
1744
+ }, z.core.$strict>]>>;
1745
+ }, z.core.$strict>>;
1746
+ }, z.core.$strict>;
1747
+ /**
1748
+ * Payload CDN configuration for pattern.
1749
+ */
1750
+ export declare const PayloadCdnConfigSchema: z.ZodObject<{
1751
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
1752
+ certificateArn: z.ZodOptional<z.ZodString>;
1753
+ }, z.core.$strict>;
1754
+ /**
1755
+ * Payload pattern configuration.
1756
+ */
1757
+ export declare const PayloadPatternConfigSchema: z.ZodObject<{
1758
+ type: z.ZodLiteral<"payload">;
1759
+ name: z.ZodString;
1760
+ domain: z.ZodOptional<z.ZodString>;
1761
+ database: z.ZodOptional<z.ZodObject<{
1762
+ type: z.ZodOptional<z.ZodEnum<{
1763
+ Aurora: "Aurora";
1764
+ Instance: "Instance";
1765
+ }>>;
1766
+ databaseName: z.ZodOptional<z.ZodString>;
1767
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
1768
+ postgresql: "postgresql";
1769
+ mysql: "mysql";
1770
+ }>>;
1771
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
1772
+ backupRetention: z.ZodOptional<z.ZodNumber>;
1773
+ port: z.ZodOptional<z.ZodNumber>;
1774
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
1775
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
1776
+ instanceType: z.ZodOptional<z.ZodString>;
1777
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
1778
+ multiAz: z.ZodOptional<z.ZodBoolean>;
1779
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1780
+ instanceType: z.ZodOptional<z.ZodString>;
1781
+ availabilityZone: z.ZodOptional<z.ZodString>;
1782
+ }, z.core.$strict>]>>;
1783
+ writer: z.ZodOptional<z.ZodObject<{
1784
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1785
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1786
+ availabilityZone: z.ZodOptional<z.ZodString>;
1787
+ }, z.core.$strict>>;
1788
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1789
+ count: z.ZodOptional<z.ZodNumber>;
1790
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
1791
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
1792
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1793
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1794
+ availabilityZone: z.ZodOptional<z.ZodString>;
1795
+ }, z.core.$strict>>>;
1796
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1797
+ }, z.core.$strict>]>>;
1798
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
1799
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
1800
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
1801
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1802
+ mode: z.ZodOptional<z.ZodEnum<{
1803
+ standard: "standard";
1804
+ advanced: "advanced";
1805
+ }>>;
1806
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1807
+ awsManaged: z.ZodLiteral<true>;
1808
+ }, z.core.$strict>, z.ZodObject<{
1809
+ useCMK: z.ZodLiteral<true>;
1810
+ }, z.core.$strict>]>>;
1811
+ }, z.core.$strict>]>>;
1812
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1813
+ maxConnections: z.ZodOptional<z.ZodNumber>;
1814
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
1815
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
1816
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
1817
+ }, z.core.$strict>]>>;
1818
+ credentials: z.ZodOptional<z.ZodObject<{
1819
+ username: z.ZodOptional<z.ZodString>;
1820
+ secretRotation: z.ZodOptional<z.ZodObject<{
1821
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
1822
+ }, z.core.$strict>>;
1823
+ }, z.core.$strict>>;
1824
+ encryption: z.ZodOptional<z.ZodObject<{
1825
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1826
+ awsManaged: z.ZodLiteral<true>;
1827
+ }, z.core.$strict>, z.ZodObject<{
1828
+ useCMK: z.ZodLiteral<true>;
1829
+ }, z.core.$strict>]>>;
1830
+ }, z.core.$strict>>;
1831
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
1832
+ snapshotUsername: z.ZodOptional<z.ZodString>;
1833
+ }, z.core.$strict>>;
1834
+ compute: z.ZodOptional<z.ZodObject<{
1835
+ server: z.ZodOptional<z.ZodObject<{
1836
+ memorySize: z.ZodOptional<z.ZodNumber>;
1837
+ timeout: z.ZodOptional<z.ZodNumber>;
1838
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1839
+ }, z.core.$strict>>;
1840
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
1841
+ memorySize: z.ZodOptional<z.ZodNumber>;
1842
+ timeout: z.ZodOptional<z.ZodNumber>;
1843
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1844
+ }, z.core.$strict>>;
1845
+ revalidation: z.ZodOptional<z.ZodObject<{
1846
+ memorySize: z.ZodOptional<z.ZodNumber>;
1847
+ timeout: z.ZodOptional<z.ZodNumber>;
1848
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1849
+ }, z.core.$strict>>;
1850
+ }, z.core.$strict>>;
1851
+ storage: z.ZodOptional<z.ZodObject<{
1852
+ assets: z.ZodOptional<z.ZodObject<{
1853
+ versioned: z.ZodOptional<z.ZodBoolean>;
1854
+ }, z.core.$strict>>;
1855
+ cache: z.ZodOptional<z.ZodObject<{
1856
+ versioned: z.ZodOptional<z.ZodBoolean>;
1857
+ }, z.core.$strict>>;
1858
+ media: z.ZodOptional<z.ZodObject<{
1859
+ versioned: z.ZodOptional<z.ZodBoolean>;
1860
+ }, z.core.$strict>>;
1861
+ }, z.core.$strict>>;
1862
+ messaging: z.ZodOptional<z.ZodObject<{
1863
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
1864
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
1865
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
1866
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
1867
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
1868
+ enabled: z.ZodOptional<z.ZodBoolean>;
1869
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
1870
+ }, z.core.$strict>]>>;
1871
+ }, z.core.$strict>>;
1872
+ }, z.core.$strict>>;
1873
+ cdn: z.ZodOptional<z.ZodObject<{
1874
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
1875
+ certificateArn: z.ZodOptional<z.ZodString>;
1876
+ }, z.core.$strict>>;
1877
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1878
+ }, z.core.$strict>;
1879
+ /**
1880
+ * Next.js pattern configuration.
1881
+ * Shares the same OpenNext infrastructure as Payload but without
1882
+ * requiring a database by default (pure Next.js with optional database).
1883
+ */
1884
+ export declare const NextJSPatternConfigSchema: z.ZodObject<{
1885
+ type: z.ZodLiteral<"nextjs">;
1886
+ name: z.ZodString;
1887
+ domain: z.ZodOptional<z.ZodString>;
1888
+ database: z.ZodOptional<z.ZodObject<{
1889
+ type: z.ZodOptional<z.ZodEnum<{
1890
+ Aurora: "Aurora";
1891
+ Instance: "Instance";
1892
+ }>>;
1893
+ databaseName: z.ZodOptional<z.ZodString>;
1894
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
1895
+ postgresql: "postgresql";
1896
+ mysql: "mysql";
1897
+ }>>;
1898
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
1899
+ backupRetention: z.ZodOptional<z.ZodNumber>;
1900
+ port: z.ZodOptional<z.ZodNumber>;
1901
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
1902
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
1903
+ instanceType: z.ZodOptional<z.ZodString>;
1904
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
1905
+ multiAz: z.ZodOptional<z.ZodBoolean>;
1906
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1907
+ instanceType: z.ZodOptional<z.ZodString>;
1908
+ availabilityZone: z.ZodOptional<z.ZodString>;
1909
+ }, z.core.$strict>]>>;
1910
+ writer: z.ZodOptional<z.ZodObject<{
1911
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1912
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1913
+ availabilityZone: z.ZodOptional<z.ZodString>;
1914
+ }, z.core.$strict>>;
1915
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1916
+ count: z.ZodOptional<z.ZodNumber>;
1917
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
1918
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
1919
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1920
+ identifierSuffix: z.ZodOptional<z.ZodString>;
1921
+ availabilityZone: z.ZodOptional<z.ZodString>;
1922
+ }, z.core.$strict>>>;
1923
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
1924
+ }, z.core.$strict>]>>;
1925
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
1926
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
1927
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
1928
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1929
+ mode: z.ZodOptional<z.ZodEnum<{
1930
+ standard: "standard";
1931
+ advanced: "advanced";
1932
+ }>>;
1933
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1934
+ awsManaged: z.ZodLiteral<true>;
1935
+ }, z.core.$strict>, z.ZodObject<{
1936
+ useCMK: z.ZodLiteral<true>;
1937
+ }, z.core.$strict>]>>;
1938
+ }, z.core.$strict>]>>;
1939
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
1940
+ maxConnections: z.ZodOptional<z.ZodNumber>;
1941
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
1942
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
1943
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
1944
+ }, z.core.$strict>]>>;
1945
+ credentials: z.ZodOptional<z.ZodObject<{
1946
+ username: z.ZodOptional<z.ZodString>;
1947
+ secretRotation: z.ZodOptional<z.ZodObject<{
1948
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
1949
+ }, z.core.$strict>>;
1950
+ }, z.core.$strict>>;
1951
+ encryption: z.ZodOptional<z.ZodObject<{
1952
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
1953
+ awsManaged: z.ZodLiteral<true>;
1954
+ }, z.core.$strict>, z.ZodObject<{
1955
+ useCMK: z.ZodLiteral<true>;
1956
+ }, z.core.$strict>]>>;
1957
+ }, z.core.$strict>>;
1958
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
1959
+ snapshotUsername: z.ZodOptional<z.ZodString>;
1960
+ }, z.core.$strict>>;
1961
+ compute: z.ZodOptional<z.ZodObject<{
1962
+ server: z.ZodOptional<z.ZodObject<{
1963
+ memorySize: z.ZodOptional<z.ZodNumber>;
1964
+ timeout: z.ZodOptional<z.ZodNumber>;
1965
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1966
+ }, z.core.$strict>>;
1967
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
1968
+ memorySize: z.ZodOptional<z.ZodNumber>;
1969
+ timeout: z.ZodOptional<z.ZodNumber>;
1970
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1971
+ }, z.core.$strict>>;
1972
+ revalidation: z.ZodOptional<z.ZodObject<{
1973
+ memorySize: z.ZodOptional<z.ZodNumber>;
1974
+ timeout: z.ZodOptional<z.ZodNumber>;
1975
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
1976
+ }, z.core.$strict>>;
1977
+ }, z.core.$strict>>;
1978
+ storage: z.ZodOptional<z.ZodObject<{
1979
+ assets: z.ZodOptional<z.ZodObject<{
1980
+ versioned: z.ZodOptional<z.ZodBoolean>;
1981
+ }, z.core.$strict>>;
1982
+ cache: z.ZodOptional<z.ZodObject<{
1983
+ versioned: z.ZodOptional<z.ZodBoolean>;
1984
+ }, z.core.$strict>>;
1985
+ media: z.ZodOptional<z.ZodObject<{
1986
+ versioned: z.ZodOptional<z.ZodBoolean>;
1987
+ }, z.core.$strict>>;
1988
+ }, z.core.$strict>>;
1989
+ messaging: z.ZodOptional<z.ZodObject<{
1990
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
1991
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
1992
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
1993
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
1994
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
1995
+ enabled: z.ZodOptional<z.ZodBoolean>;
1996
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
1997
+ }, z.core.$strict>]>>;
1998
+ }, z.core.$strict>>;
1999
+ }, z.core.$strict>>;
2000
+ cdn: z.ZodOptional<z.ZodObject<{
2001
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
2002
+ certificateArn: z.ZodOptional<z.ZodString>;
2003
+ }, z.core.$strict>>;
2004
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2005
+ }, z.core.$strict>;
2006
+ /**
2007
+ * Pattern configuration discriminated union.
2008
+ * Extensible for future patterns (Remix, etc.)
2009
+ */
2010
+ export declare const PatternConfigSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
2011
+ type: z.ZodLiteral<"payload">;
2012
+ name: z.ZodString;
2013
+ domain: z.ZodOptional<z.ZodString>;
2014
+ database: z.ZodOptional<z.ZodObject<{
2015
+ type: z.ZodOptional<z.ZodEnum<{
2016
+ Aurora: "Aurora";
2017
+ Instance: "Instance";
2018
+ }>>;
2019
+ databaseName: z.ZodOptional<z.ZodString>;
2020
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
2021
+ postgresql: "postgresql";
2022
+ mysql: "mysql";
2023
+ }>>;
2024
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
2025
+ backupRetention: z.ZodOptional<z.ZodNumber>;
2026
+ port: z.ZodOptional<z.ZodNumber>;
2027
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
2028
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
2029
+ instanceType: z.ZodOptional<z.ZodString>;
2030
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
2031
+ multiAz: z.ZodOptional<z.ZodBoolean>;
2032
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2033
+ instanceType: z.ZodOptional<z.ZodString>;
2034
+ availabilityZone: z.ZodOptional<z.ZodString>;
2035
+ }, z.core.$strict>]>>;
2036
+ writer: z.ZodOptional<z.ZodObject<{
2037
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2038
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2039
+ availabilityZone: z.ZodOptional<z.ZodString>;
2040
+ }, z.core.$strict>>;
2041
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2042
+ count: z.ZodOptional<z.ZodNumber>;
2043
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
2044
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
2045
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2046
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2047
+ availabilityZone: z.ZodOptional<z.ZodString>;
2048
+ }, z.core.$strict>>>;
2049
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2050
+ }, z.core.$strict>]>>;
2051
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
2052
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
2053
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
2054
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2055
+ mode: z.ZodOptional<z.ZodEnum<{
2056
+ standard: "standard";
2057
+ advanced: "advanced";
2058
+ }>>;
2059
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2060
+ awsManaged: z.ZodLiteral<true>;
2061
+ }, z.core.$strict>, z.ZodObject<{
2062
+ useCMK: z.ZodLiteral<true>;
2063
+ }, z.core.$strict>]>>;
2064
+ }, z.core.$strict>]>>;
2065
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2066
+ maxConnections: z.ZodOptional<z.ZodNumber>;
2067
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
2068
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
2069
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
2070
+ }, z.core.$strict>]>>;
2071
+ credentials: z.ZodOptional<z.ZodObject<{
2072
+ username: z.ZodOptional<z.ZodString>;
2073
+ secretRotation: z.ZodOptional<z.ZodObject<{
2074
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
2075
+ }, z.core.$strict>>;
2076
+ }, z.core.$strict>>;
2077
+ encryption: z.ZodOptional<z.ZodObject<{
2078
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2079
+ awsManaged: z.ZodLiteral<true>;
2080
+ }, z.core.$strict>, z.ZodObject<{
2081
+ useCMK: z.ZodLiteral<true>;
2082
+ }, z.core.$strict>]>>;
2083
+ }, z.core.$strict>>;
2084
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
2085
+ snapshotUsername: z.ZodOptional<z.ZodString>;
2086
+ }, z.core.$strict>>;
2087
+ compute: z.ZodOptional<z.ZodObject<{
2088
+ server: z.ZodOptional<z.ZodObject<{
2089
+ memorySize: z.ZodOptional<z.ZodNumber>;
2090
+ timeout: z.ZodOptional<z.ZodNumber>;
2091
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2092
+ }, z.core.$strict>>;
2093
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
2094
+ memorySize: z.ZodOptional<z.ZodNumber>;
2095
+ timeout: z.ZodOptional<z.ZodNumber>;
2096
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2097
+ }, z.core.$strict>>;
2098
+ revalidation: z.ZodOptional<z.ZodObject<{
2099
+ memorySize: z.ZodOptional<z.ZodNumber>;
2100
+ timeout: z.ZodOptional<z.ZodNumber>;
2101
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2102
+ }, z.core.$strict>>;
2103
+ }, z.core.$strict>>;
2104
+ storage: z.ZodOptional<z.ZodObject<{
2105
+ assets: z.ZodOptional<z.ZodObject<{
2106
+ versioned: z.ZodOptional<z.ZodBoolean>;
2107
+ }, z.core.$strict>>;
2108
+ cache: z.ZodOptional<z.ZodObject<{
2109
+ versioned: z.ZodOptional<z.ZodBoolean>;
2110
+ }, z.core.$strict>>;
2111
+ media: z.ZodOptional<z.ZodObject<{
2112
+ versioned: z.ZodOptional<z.ZodBoolean>;
2113
+ }, z.core.$strict>>;
2114
+ }, z.core.$strict>>;
2115
+ messaging: z.ZodOptional<z.ZodObject<{
2116
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
2117
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
2118
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
2119
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
2120
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
2121
+ enabled: z.ZodOptional<z.ZodBoolean>;
2122
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
2123
+ }, z.core.$strict>]>>;
2124
+ }, z.core.$strict>>;
2125
+ }, z.core.$strict>>;
2126
+ cdn: z.ZodOptional<z.ZodObject<{
2127
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
2128
+ certificateArn: z.ZodOptional<z.ZodString>;
2129
+ }, z.core.$strict>>;
2130
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2131
+ }, z.core.$strict>, z.ZodObject<{
2132
+ type: z.ZodLiteral<"nextjs">;
2133
+ name: z.ZodString;
2134
+ domain: z.ZodOptional<z.ZodString>;
2135
+ database: z.ZodOptional<z.ZodObject<{
2136
+ type: z.ZodOptional<z.ZodEnum<{
2137
+ Aurora: "Aurora";
2138
+ Instance: "Instance";
2139
+ }>>;
2140
+ databaseName: z.ZodOptional<z.ZodString>;
2141
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
2142
+ postgresql: "postgresql";
2143
+ mysql: "mysql";
2144
+ }>>;
2145
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
2146
+ backupRetention: z.ZodOptional<z.ZodNumber>;
2147
+ port: z.ZodOptional<z.ZodNumber>;
2148
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
2149
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
2150
+ instanceType: z.ZodOptional<z.ZodString>;
2151
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
2152
+ multiAz: z.ZodOptional<z.ZodBoolean>;
2153
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2154
+ instanceType: z.ZodOptional<z.ZodString>;
2155
+ availabilityZone: z.ZodOptional<z.ZodString>;
2156
+ }, z.core.$strict>]>>;
2157
+ writer: z.ZodOptional<z.ZodObject<{
2158
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2159
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2160
+ availabilityZone: z.ZodOptional<z.ZodString>;
2161
+ }, z.core.$strict>>;
2162
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2163
+ count: z.ZodOptional<z.ZodNumber>;
2164
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
2165
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
2166
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2167
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2168
+ availabilityZone: z.ZodOptional<z.ZodString>;
2169
+ }, z.core.$strict>>>;
2170
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2171
+ }, z.core.$strict>]>>;
2172
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
2173
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
2174
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
2175
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2176
+ mode: z.ZodOptional<z.ZodEnum<{
2177
+ standard: "standard";
2178
+ advanced: "advanced";
2179
+ }>>;
2180
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2181
+ awsManaged: z.ZodLiteral<true>;
2182
+ }, z.core.$strict>, z.ZodObject<{
2183
+ useCMK: z.ZodLiteral<true>;
2184
+ }, z.core.$strict>]>>;
2185
+ }, z.core.$strict>]>>;
2186
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2187
+ maxConnections: z.ZodOptional<z.ZodNumber>;
2188
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
2189
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
2190
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
2191
+ }, z.core.$strict>]>>;
2192
+ credentials: z.ZodOptional<z.ZodObject<{
2193
+ username: z.ZodOptional<z.ZodString>;
2194
+ secretRotation: z.ZodOptional<z.ZodObject<{
2195
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
2196
+ }, z.core.$strict>>;
2197
+ }, z.core.$strict>>;
2198
+ encryption: z.ZodOptional<z.ZodObject<{
2199
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2200
+ awsManaged: z.ZodLiteral<true>;
2201
+ }, z.core.$strict>, z.ZodObject<{
2202
+ useCMK: z.ZodLiteral<true>;
2203
+ }, z.core.$strict>]>>;
2204
+ }, z.core.$strict>>;
2205
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
2206
+ snapshotUsername: z.ZodOptional<z.ZodString>;
2207
+ }, z.core.$strict>>;
2208
+ compute: z.ZodOptional<z.ZodObject<{
2209
+ server: z.ZodOptional<z.ZodObject<{
2210
+ memorySize: z.ZodOptional<z.ZodNumber>;
2211
+ timeout: z.ZodOptional<z.ZodNumber>;
2212
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2213
+ }, z.core.$strict>>;
2214
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
2215
+ memorySize: z.ZodOptional<z.ZodNumber>;
2216
+ timeout: z.ZodOptional<z.ZodNumber>;
2217
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2218
+ }, z.core.$strict>>;
2219
+ revalidation: z.ZodOptional<z.ZodObject<{
2220
+ memorySize: z.ZodOptional<z.ZodNumber>;
2221
+ timeout: z.ZodOptional<z.ZodNumber>;
2222
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2223
+ }, z.core.$strict>>;
2224
+ }, z.core.$strict>>;
2225
+ storage: z.ZodOptional<z.ZodObject<{
2226
+ assets: z.ZodOptional<z.ZodObject<{
2227
+ versioned: z.ZodOptional<z.ZodBoolean>;
2228
+ }, z.core.$strict>>;
2229
+ cache: z.ZodOptional<z.ZodObject<{
2230
+ versioned: z.ZodOptional<z.ZodBoolean>;
2231
+ }, z.core.$strict>>;
2232
+ media: z.ZodOptional<z.ZodObject<{
2233
+ versioned: z.ZodOptional<z.ZodBoolean>;
2234
+ }, z.core.$strict>>;
2235
+ }, z.core.$strict>>;
2236
+ messaging: z.ZodOptional<z.ZodObject<{
2237
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
2238
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
2239
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
2240
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
2241
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
2242
+ enabled: z.ZodOptional<z.ZodBoolean>;
2243
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
2244
+ }, z.core.$strict>]>>;
2245
+ }, z.core.$strict>>;
2246
+ }, z.core.$strict>>;
2247
+ cdn: z.ZodOptional<z.ZodObject<{
2248
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
2249
+ certificateArn: z.ZodOptional<z.ZodString>;
2250
+ }, z.core.$strict>>;
2251
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2252
+ }, z.core.$strict>], "type">;
2253
+ /**
2254
+ * Custom code block position type.
2255
+ * Defines where a custom code block appears relative to managed code.
2256
+ */
2257
+ export declare const CustomCodePositionSchema: z.ZodEnum<{
2258
+ "before-imports": "before-imports";
2259
+ "after-imports": "after-imports";
2260
+ "after-app-init": "after-app-init";
2261
+ "after-tags": "after-tags";
2262
+ "after-resource": "after-resource";
2263
+ "end-of-file": "end-of-file";
2264
+ }>;
2265
+ /**
2266
+ * Statement type for managed resources.
2267
+ */
2268
+ export declare const StatementTypeSchema: z.ZodEnum<{
2269
+ custom: "custom";
2270
+ storage: "storage";
2271
+ database: "database";
2272
+ compute: "compute";
2273
+ pattern: "pattern";
2274
+ cdn: "cdn";
2275
+ network: "network";
2276
+ messaging: "messaging";
2277
+ import: "import";
2278
+ "app-init": "app-init";
2279
+ tags: "tags";
2280
+ }>;
2281
+ /**
2282
+ * Custom code block schema.
2283
+ * Represents user-written code that should be preserved during regeneration.
2284
+ * Used by the hybrid parse-preserve-generate approach.
2285
+ */
2286
+ export declare const CustomCodeBlockSchema: z.ZodObject<{
2287
+ sourceText: z.ZodString;
2288
+ position: z.ZodEnum<{
2289
+ "before-imports": "before-imports";
2290
+ "after-imports": "after-imports";
2291
+ "after-app-init": "after-app-init";
2292
+ "after-tags": "after-tags";
2293
+ "after-resource": "after-resource";
2294
+ "end-of-file": "end-of-file";
2295
+ }>;
2296
+ afterManagedResource: z.ZodOptional<z.ZodObject<{
2297
+ type: z.ZodEnum<{
2298
+ custom: "custom";
2299
+ storage: "storage";
2300
+ database: "database";
2301
+ compute: "compute";
2302
+ pattern: "pattern";
2303
+ cdn: "cdn";
2304
+ network: "network";
2305
+ messaging: "messaging";
2306
+ import: "import";
2307
+ "app-init": "app-init";
2308
+ tags: "tags";
2309
+ }>;
2310
+ name: z.ZodOptional<z.ZodString>;
2311
+ }, z.core.$strict>>;
2312
+ originalLine: z.ZodOptional<z.ZodNumber>;
2313
+ leadingComments: z.ZodOptional<z.ZodArray<z.ZodString>>;
2314
+ orphaned: z.ZodOptional<z.ZodBoolean>;
2315
+ orphanedComment: z.ZodOptional<z.ZodString>;
2316
+ }, z.core.$strict>;
2317
+ /**
2318
+ * Backup configuration schema.
2319
+ * Controls automatic AWS Backup enrolment via tier presets.
2320
+ * - Object with tier: Tags all resources with `fjall:disasterRecovery:tier`
2321
+ * - false: Explicitly disabled (no backup tag applied)
2322
+ */
2323
+ export declare const BackupConfigSchema: z.ZodUnion<readonly [z.ZodObject<{
2324
+ tier: z.ZodEnum<{
2325
+ standard: "standard";
2326
+ resilient: "resilient";
2327
+ enterprise: "enterprise";
2328
+ }>;
2329
+ }, z.core.$strict>, z.ZodLiteral<false>]>;
2330
+ /**
2331
+ * Tunnel configuration schema.
2332
+ * Controls bastion host creation for secure SSM database access.
2333
+ * - Object with optional instanceType: Create bastion with custom config
2334
+ * - false: Explicitly disabled (no bastion)
2335
+ */
2336
+ export declare const TunnelConfigSchema: z.ZodUnion<readonly [z.ZodObject<{
2337
+ instanceType: z.ZodOptional<z.ZodString>;
2338
+ }, z.core.$strict>, z.ZodLiteral<false>]>;
2339
+ /**
2340
+ * Application resource plan schema.
2341
+ * Represents the complete plan for an application's infrastructure.
2342
+ * Must be defined after ComputeResourcePlanSchema due to declaration order.
2343
+ */
2344
+ export declare const ApplicationResourcePlanSchema: z.ZodObject<{
2345
+ appName: z.ZodString;
2346
+ type: z.ZodEnum<{
2347
+ standard: "standard";
2348
+ resilient: "resilient";
2349
+ enterprise: "enterprise";
2350
+ tinkerer: "tinkerer";
2351
+ lightweight: "lightweight";
2352
+ custom: "custom";
2353
+ }>;
2354
+ pattern: z.ZodOptional<z.ZodEnum<{
2355
+ payload: "payload";
2356
+ nextjs: "nextjs";
2357
+ }>>;
2358
+ patternConfig: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
2359
+ type: z.ZodLiteral<"payload">;
2360
+ name: z.ZodString;
2361
+ domain: z.ZodOptional<z.ZodString>;
2362
+ database: z.ZodOptional<z.ZodObject<{
2363
+ type: z.ZodOptional<z.ZodEnum<{
2364
+ Aurora: "Aurora";
2365
+ Instance: "Instance";
2366
+ }>>;
2367
+ databaseName: z.ZodOptional<z.ZodString>;
2368
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
2369
+ postgresql: "postgresql";
2370
+ mysql: "mysql";
2371
+ }>>;
2372
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
2373
+ backupRetention: z.ZodOptional<z.ZodNumber>;
2374
+ port: z.ZodOptional<z.ZodNumber>;
2375
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
2376
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
2377
+ instanceType: z.ZodOptional<z.ZodString>;
2378
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
2379
+ multiAz: z.ZodOptional<z.ZodBoolean>;
2380
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2381
+ instanceType: z.ZodOptional<z.ZodString>;
2382
+ availabilityZone: z.ZodOptional<z.ZodString>;
2383
+ }, z.core.$strict>]>>;
2384
+ writer: z.ZodOptional<z.ZodObject<{
2385
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2386
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2387
+ availabilityZone: z.ZodOptional<z.ZodString>;
2388
+ }, z.core.$strict>>;
2389
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2390
+ count: z.ZodOptional<z.ZodNumber>;
2391
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
2392
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
2393
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2394
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2395
+ availabilityZone: z.ZodOptional<z.ZodString>;
2396
+ }, z.core.$strict>>>;
2397
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2398
+ }, z.core.$strict>]>>;
2399
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
2400
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
2401
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
2402
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2403
+ mode: z.ZodOptional<z.ZodEnum<{
2404
+ standard: "standard";
2405
+ advanced: "advanced";
2406
+ }>>;
2407
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2408
+ awsManaged: z.ZodLiteral<true>;
2409
+ }, z.core.$strict>, z.ZodObject<{
2410
+ useCMK: z.ZodLiteral<true>;
2411
+ }, z.core.$strict>]>>;
2412
+ }, z.core.$strict>]>>;
2413
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2414
+ maxConnections: z.ZodOptional<z.ZodNumber>;
2415
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
2416
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
2417
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
2418
+ }, z.core.$strict>]>>;
2419
+ credentials: z.ZodOptional<z.ZodObject<{
2420
+ username: z.ZodOptional<z.ZodString>;
2421
+ secretRotation: z.ZodOptional<z.ZodObject<{
2422
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
2423
+ }, z.core.$strict>>;
2424
+ }, z.core.$strict>>;
2425
+ encryption: z.ZodOptional<z.ZodObject<{
2426
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2427
+ awsManaged: z.ZodLiteral<true>;
2428
+ }, z.core.$strict>, z.ZodObject<{
2429
+ useCMK: z.ZodLiteral<true>;
2430
+ }, z.core.$strict>]>>;
2431
+ }, z.core.$strict>>;
2432
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
2433
+ snapshotUsername: z.ZodOptional<z.ZodString>;
2434
+ }, z.core.$strict>>;
2435
+ compute: z.ZodOptional<z.ZodObject<{
2436
+ server: z.ZodOptional<z.ZodObject<{
2437
+ memorySize: z.ZodOptional<z.ZodNumber>;
2438
+ timeout: z.ZodOptional<z.ZodNumber>;
2439
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2440
+ }, z.core.$strict>>;
2441
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
2442
+ memorySize: z.ZodOptional<z.ZodNumber>;
2443
+ timeout: z.ZodOptional<z.ZodNumber>;
2444
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2445
+ }, z.core.$strict>>;
2446
+ revalidation: z.ZodOptional<z.ZodObject<{
2447
+ memorySize: z.ZodOptional<z.ZodNumber>;
2448
+ timeout: z.ZodOptional<z.ZodNumber>;
2449
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2450
+ }, z.core.$strict>>;
2451
+ }, z.core.$strict>>;
2452
+ storage: z.ZodOptional<z.ZodObject<{
2453
+ assets: z.ZodOptional<z.ZodObject<{
2454
+ versioned: z.ZodOptional<z.ZodBoolean>;
2455
+ }, z.core.$strict>>;
2456
+ cache: z.ZodOptional<z.ZodObject<{
2457
+ versioned: z.ZodOptional<z.ZodBoolean>;
2458
+ }, z.core.$strict>>;
2459
+ media: z.ZodOptional<z.ZodObject<{
2460
+ versioned: z.ZodOptional<z.ZodBoolean>;
2461
+ }, z.core.$strict>>;
2462
+ }, z.core.$strict>>;
2463
+ messaging: z.ZodOptional<z.ZodObject<{
2464
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
2465
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
2466
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
2467
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
2468
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
2469
+ enabled: z.ZodOptional<z.ZodBoolean>;
2470
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
2471
+ }, z.core.$strict>]>>;
2472
+ }, z.core.$strict>>;
2473
+ }, z.core.$strict>>;
2474
+ cdn: z.ZodOptional<z.ZodObject<{
2475
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
2476
+ certificateArn: z.ZodOptional<z.ZodString>;
2477
+ }, z.core.$strict>>;
2478
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2479
+ }, z.core.$strict>, z.ZodObject<{
2480
+ type: z.ZodLiteral<"nextjs">;
2481
+ name: z.ZodString;
2482
+ domain: z.ZodOptional<z.ZodString>;
2483
+ database: z.ZodOptional<z.ZodObject<{
2484
+ type: z.ZodOptional<z.ZodEnum<{
2485
+ Aurora: "Aurora";
2486
+ Instance: "Instance";
2487
+ }>>;
2488
+ databaseName: z.ZodOptional<z.ZodString>;
2489
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
2490
+ postgresql: "postgresql";
2491
+ mysql: "mysql";
2492
+ }>>;
2493
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
2494
+ backupRetention: z.ZodOptional<z.ZodNumber>;
2495
+ port: z.ZodOptional<z.ZodNumber>;
2496
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
2497
+ allowedIpCidr: z.ZodOptional<z.ZodString>;
2498
+ instanceType: z.ZodOptional<z.ZodString>;
2499
+ allocatedStorage: z.ZodOptional<z.ZodNumber>;
2500
+ multiAz: z.ZodOptional<z.ZodBoolean>;
2501
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2502
+ instanceType: z.ZodOptional<z.ZodString>;
2503
+ availabilityZone: z.ZodOptional<z.ZodString>;
2504
+ }, z.core.$strict>]>>;
2505
+ writer: z.ZodOptional<z.ZodObject<{
2506
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2507
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2508
+ availabilityZone: z.ZodOptional<z.ZodString>;
2509
+ }, z.core.$strict>>;
2510
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2511
+ count: z.ZodOptional<z.ZodNumber>;
2512
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
2513
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
2514
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2515
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2516
+ availabilityZone: z.ZodOptional<z.ZodString>;
2517
+ }, z.core.$strict>>>;
2518
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2519
+ }, z.core.$strict>]>>;
2520
+ allowVpcAccess: z.ZodOptional<z.ZodBoolean>;
2521
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
2522
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
2523
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2524
+ mode: z.ZodOptional<z.ZodEnum<{
2525
+ standard: "standard";
2526
+ advanced: "advanced";
2527
+ }>>;
2528
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2529
+ awsManaged: z.ZodLiteral<true>;
2530
+ }, z.core.$strict>, z.ZodObject<{
2531
+ useCMK: z.ZodLiteral<true>;
2532
+ }, z.core.$strict>]>>;
2533
+ }, z.core.$strict>]>>;
2534
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2535
+ maxConnections: z.ZodOptional<z.ZodNumber>;
2536
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
2537
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
2538
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
2539
+ }, z.core.$strict>]>>;
2540
+ credentials: z.ZodOptional<z.ZodObject<{
2541
+ username: z.ZodOptional<z.ZodString>;
2542
+ secretRotation: z.ZodOptional<z.ZodObject<{
2543
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
2544
+ }, z.core.$strict>>;
2545
+ }, z.core.$strict>>;
2546
+ encryption: z.ZodOptional<z.ZodObject<{
2547
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2548
+ awsManaged: z.ZodLiteral<true>;
2549
+ }, z.core.$strict>, z.ZodObject<{
2550
+ useCMK: z.ZodLiteral<true>;
2551
+ }, z.core.$strict>]>>;
2552
+ }, z.core.$strict>>;
2553
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
2554
+ snapshotUsername: z.ZodOptional<z.ZodString>;
2555
+ }, z.core.$strict>>;
2556
+ compute: z.ZodOptional<z.ZodObject<{
2557
+ server: z.ZodOptional<z.ZodObject<{
2558
+ memorySize: z.ZodOptional<z.ZodNumber>;
2559
+ timeout: z.ZodOptional<z.ZodNumber>;
2560
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2561
+ }, z.core.$strict>>;
2562
+ imageOptimisation: z.ZodOptional<z.ZodObject<{
2563
+ memorySize: z.ZodOptional<z.ZodNumber>;
2564
+ timeout: z.ZodOptional<z.ZodNumber>;
2565
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2566
+ }, z.core.$strict>>;
2567
+ revalidation: z.ZodOptional<z.ZodObject<{
2568
+ memorySize: z.ZodOptional<z.ZodNumber>;
2569
+ timeout: z.ZodOptional<z.ZodNumber>;
2570
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2571
+ }, z.core.$strict>>;
2572
+ }, z.core.$strict>>;
2573
+ storage: z.ZodOptional<z.ZodObject<{
2574
+ assets: z.ZodOptional<z.ZodObject<{
2575
+ versioned: z.ZodOptional<z.ZodBoolean>;
2576
+ }, z.core.$strict>>;
2577
+ cache: z.ZodOptional<z.ZodObject<{
2578
+ versioned: z.ZodOptional<z.ZodBoolean>;
2579
+ }, z.core.$strict>>;
2580
+ media: z.ZodOptional<z.ZodObject<{
2581
+ versioned: z.ZodOptional<z.ZodBoolean>;
2582
+ }, z.core.$strict>>;
2583
+ }, z.core.$strict>>;
2584
+ messaging: z.ZodOptional<z.ZodObject<{
2585
+ revalidationQueue: z.ZodOptional<z.ZodObject<{
2586
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
2587
+ messageRetentionPeriod: z.ZodOptional<z.ZodNumber>;
2588
+ maxMessageSize: z.ZodOptional<z.ZodNumber>;
2589
+ deadLetterQueue: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
2590
+ enabled: z.ZodOptional<z.ZodBoolean>;
2591
+ maxReceiveCount: z.ZodOptional<z.ZodNumber>;
2592
+ }, z.core.$strict>]>>;
2593
+ }, z.core.$strict>>;
2594
+ }, z.core.$strict>>;
2595
+ cdn: z.ZodOptional<z.ZodObject<{
2596
+ domainNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
2597
+ certificateArn: z.ZodOptional<z.ZodString>;
2598
+ }, z.core.$strict>>;
2599
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2600
+ }, z.core.$strict>], "type">>;
2601
+ owner: z.ZodOptional<z.ZodString>;
2602
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2603
+ vpcId: z.ZodOptional<z.ZodString>;
2604
+ network: z.ZodOptional<z.ZodObject<{
2605
+ maxAzs: z.ZodOptional<z.ZodNumber>;
2606
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2607
+ count: z.ZodOptional<z.ZodNumber>;
2608
+ }, z.core.$strict>]>>;
2609
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2610
+ destination: z.ZodOptional<z.ZodEnum<{
2611
+ cloudwatch: "cloudwatch";
2612
+ s3: "s3";
2613
+ }>>;
2614
+ retentionDays: z.ZodOptional<z.ZodNumber>;
2615
+ trafficType: z.ZodOptional<z.ZodEnum<{
2616
+ ALL: "ALL";
2617
+ ACCEPT: "ACCEPT";
2618
+ REJECT: "REJECT";
2619
+ }>>;
2620
+ }, z.core.$strict>]>>;
2621
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2622
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2623
+ s3: z.ZodOptional<z.ZodBoolean>;
2624
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
2625
+ }, z.core.$strict>]>>;
2626
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2627
+ ecr: z.ZodOptional<z.ZodBoolean>;
2628
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
2629
+ kms: z.ZodOptional<z.ZodBoolean>;
2630
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
2631
+ ssm: z.ZodOptional<z.ZodBoolean>;
2632
+ sts: z.ZodOptional<z.ZodBoolean>;
2633
+ }, z.core.$strict>]>>;
2634
+ }, z.core.$strict>]>>;
2635
+ cidrMask: z.ZodOptional<z.ZodNumber>;
2636
+ }, z.core.$strict>>;
2637
+ backup: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2638
+ tier: z.ZodEnum<{
2639
+ standard: "standard";
2640
+ resilient: "resilient";
2641
+ enterprise: "enterprise";
2642
+ }>;
2643
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
2644
+ tunnel: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2645
+ instanceType: z.ZodOptional<z.ZodString>;
2646
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
2647
+ additionalNetworks: z.ZodOptional<z.ZodArray<z.ZodObject<{
2648
+ maxAzs: z.ZodOptional<z.ZodNumber>;
2649
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2650
+ count: z.ZodOptional<z.ZodNumber>;
2651
+ }, z.core.$strict>]>>;
2652
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2653
+ destination: z.ZodOptional<z.ZodEnum<{
2654
+ cloudwatch: "cloudwatch";
2655
+ s3: "s3";
2656
+ }>>;
2657
+ retentionDays: z.ZodOptional<z.ZodNumber>;
2658
+ trafficType: z.ZodOptional<z.ZodEnum<{
2659
+ ALL: "ALL";
2660
+ ACCEPT: "ACCEPT";
2661
+ REJECT: "REJECT";
2662
+ }>>;
2663
+ }, z.core.$strict>]>>;
2664
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2665
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2666
+ s3: z.ZodOptional<z.ZodBoolean>;
2667
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
2668
+ }, z.core.$strict>]>>;
2669
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2670
+ ecr: z.ZodOptional<z.ZodBoolean>;
2671
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
2672
+ kms: z.ZodOptional<z.ZodBoolean>;
2673
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
2674
+ ssm: z.ZodOptional<z.ZodBoolean>;
2675
+ sts: z.ZodOptional<z.ZodBoolean>;
2676
+ }, z.core.$strict>]>>;
2677
+ }, z.core.$strict>]>>;
2678
+ cidrMask: z.ZodOptional<z.ZodNumber>;
2679
+ name: z.ZodString;
2680
+ }, z.core.$strict>>>;
2681
+ database: z.ZodArray<z.ZodObject<{
2682
+ name: z.ZodString;
2683
+ type: z.ZodEnum<{
2684
+ Aurora: "Aurora";
2685
+ Instance: "Instance";
2686
+ GlobalAurora: "GlobalAurora";
2687
+ }>;
2688
+ databaseName: z.ZodString;
2689
+ instanceType: z.ZodOptional<z.ZodString>;
2690
+ multiAz: z.ZodOptional<z.ZodBoolean>;
2691
+ publiclyAccessible: z.ZodOptional<z.ZodBoolean>;
2692
+ enableSecretRotation: z.ZodOptional<z.ZodBoolean>;
2693
+ databaseInsights: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2694
+ mode: z.ZodOptional<z.ZodEnum<{
2695
+ standard: "standard";
2696
+ advanced: "advanced";
2697
+ }>>;
2698
+ encryptionKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2699
+ awsManaged: z.ZodLiteral<true>;
2700
+ }, z.core.$strict>, z.ZodObject<{
2701
+ useCMK: z.ZodLiteral<true>;
2702
+ }, z.core.$strict>]>>;
2703
+ }, z.core.$strict>]>>;
2704
+ port: z.ZodOptional<z.ZodNumber>;
2705
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
2706
+ proxy: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2707
+ maxConnections: z.ZodOptional<z.ZodNumber>;
2708
+ maxIdleConnections: z.ZodOptional<z.ZodNumber>;
2709
+ connectionBorrowTimeout: z.ZodOptional<z.ZodNumber>;
2710
+ requireTLS: z.ZodOptional<z.ZodBoolean>;
2711
+ }, z.core.$strict>]>>;
2712
+ credentials: z.ZodOptional<z.ZodObject<{
2713
+ username: z.ZodOptional<z.ZodString>;
2714
+ secretRotation: z.ZodOptional<z.ZodObject<{
2715
+ automaticallyAfterDays: z.ZodOptional<z.ZodNumber>;
2716
+ }, z.core.$strict>>;
2717
+ }, z.core.$strict>>;
2718
+ readReplica: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2719
+ instanceType: z.ZodOptional<z.ZodString>;
2720
+ availabilityZone: z.ZodOptional<z.ZodString>;
2721
+ }, z.core.$strict>]>>;
2722
+ encryption: z.ZodOptional<z.ZodObject<{
2723
+ storageKey: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2724
+ awsManaged: z.ZodLiteral<true>;
2725
+ }, z.core.$strict>, z.ZodObject<{
2726
+ useCMK: z.ZodLiteral<true>;
2727
+ }, z.core.$strict>]>>;
2728
+ }, z.core.$strict>>;
2729
+ writer: z.ZodOptional<z.ZodObject<{
2730
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2731
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2732
+ availabilityZone: z.ZodOptional<z.ZodString>;
2733
+ }, z.core.$strict>>;
2734
+ readers: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2735
+ count: z.ZodOptional<z.ZodNumber>;
2736
+ instances: z.ZodOptional<z.ZodArray<z.ZodObject<{
2737
+ scaleWithWriter: z.ZodOptional<z.ZodBoolean>;
2738
+ enableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2739
+ identifierSuffix: z.ZodOptional<z.ZodString>;
2740
+ availabilityZone: z.ZodOptional<z.ZodString>;
2741
+ }, z.core.$strict>>>;
2742
+ defaultEnableDatabaseInsights: z.ZodOptional<z.ZodBoolean>;
2743
+ }, z.core.$strict>]>>;
2744
+ backupRetention: z.ZodOptional<z.ZodNumber>;
2745
+ preferredMaintenanceWindow: z.ZodOptional<z.ZodString>;
2746
+ monitoringInterval: z.ZodOptional<z.ZodNumber>;
2747
+ primaryRegion: z.ZodOptional<z.ZodString>;
2748
+ secondaryRegions: z.ZodOptional<z.ZodArray<z.ZodString>>;
2749
+ globalClusterIdentifier: z.ZodOptional<z.ZodString>;
2750
+ enableGlobalWriteForwarding: z.ZodOptional<z.ZodBoolean>;
2751
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
2752
+ snapshotUsername: z.ZodOptional<z.ZodString>;
2753
+ databaseEngine: z.ZodOptional<z.ZodEnum<{
2754
+ postgresql: "postgresql";
2755
+ mysql: "mysql";
2756
+ }>>;
2757
+ engineExpression: z.ZodOptional<z.ZodString>;
2758
+ variableName: z.ZodOptional<z.ZodString>;
2759
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
2760
+ key: z.ZodString;
2761
+ sourceText: z.ZodString;
2762
+ }, z.core.$strict>>>;
2763
+ }, z.core.$strict>>;
2764
+ s3: z.ZodArray<z.ZodObject<{
2765
+ name: z.ZodString;
2766
+ bucketName: z.ZodOptional<z.ZodString>;
2767
+ publicReadAccess: z.ZodOptional<z.ZodBoolean>;
2768
+ websiteHosting: z.ZodOptional<z.ZodObject<{
2769
+ indexDocument: z.ZodString;
2770
+ errorDocument: z.ZodOptional<z.ZodString>;
2771
+ }, z.core.$strict>>;
2772
+ backupVaultTier: z.ZodOptional<z.ZodEnum<{
2773
+ standard: "standard";
2774
+ resilient: "resilient";
2775
+ enterprise: "enterprise";
2776
+ }>>;
2777
+ versioned: z.ZodOptional<z.ZodBoolean>;
2778
+ encryption: z.ZodOptional<z.ZodEnum<{
2779
+ KMS: "KMS";
2780
+ AES256: "AES256";
2781
+ }>>;
2782
+ kmsKeyArn: z.ZodOptional<z.ZodString>;
2783
+ cors: z.ZodOptional<z.ZodArray<z.ZodObject<{
2784
+ allowedOrigins: z.ZodArray<z.ZodString>;
2785
+ allowedMethods: z.ZodArray<z.ZodString>;
2786
+ }, z.core.$strict>>>;
2787
+ deployment: z.ZodOptional<z.ZodObject<{
2788
+ source: z.ZodString;
2789
+ prune: z.ZodOptional<z.ZodBoolean>;
2790
+ cacheControl: z.ZodOptional<z.ZodObject<{
2791
+ maxAge: z.ZodOptional<z.ZodNumber>;
2792
+ immutable: z.ZodOptional<z.ZodBoolean>;
2793
+ }, z.core.$strict>>;
2794
+ }, z.core.$strict>>;
2795
+ stackPlacement: z.ZodOptional<z.ZodEnum<{
2796
+ storage: "storage";
2797
+ compute: "compute";
2798
+ cdn: "cdn";
2799
+ }>>;
2800
+ variableName: z.ZodOptional<z.ZodString>;
2801
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
2802
+ key: z.ZodString;
2803
+ sourceText: z.ZodString;
2804
+ }, z.core.$strict>>>;
2805
+ }, z.core.$strict>>;
2806
+ compute: z.ZodArray<z.ZodObject<{
2807
+ name: z.ZodString;
2808
+ type: z.ZodEnum<{
2809
+ ecs: "ecs";
2810
+ lambda: "lambda";
2811
+ ec2: "ec2";
2812
+ }>;
2813
+ needsConnection: z.ZodBoolean;
2814
+ connectedDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
2815
+ connectedStorage: z.ZodOptional<z.ZodArray<z.ZodString>>;
2816
+ cluster: z.ZodOptional<z.ZodObject<{
2817
+ domain: z.ZodOptional<z.ZodString>;
2818
+ loadBalancer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodLiteral<"public">, z.ZodLiteral<"internal">]>>;
2819
+ directAccess: z.ZodOptional<z.ZodBoolean>;
2820
+ }, z.core.$strict>>;
2821
+ services: z.ZodOptional<z.ZodArray<z.ZodObject<{
2822
+ name: z.ZodString;
2823
+ dockerfilePath: z.ZodOptional<z.ZodString>;
2824
+ dockerTarget: z.ZodOptional<z.ZodString>;
2825
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
2826
+ needsStorageConnection: z.ZodOptional<z.ZodBoolean>;
2827
+ image: z.ZodOptional<z.ZodString>;
2828
+ containers: z.ZodOptional<z.ZodArray<z.ZodObject<{
2829
+ name: z.ZodOptional<z.ZodString>;
2830
+ image: z.ZodOptional<z.ZodString>;
2831
+ port: z.ZodOptional<z.ZodNumber>;
2832
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
2833
+ __identifier: z.ZodString;
2834
+ }, z.core.$strict>, z.ZodObject<{
2835
+ __expression: z.ZodString;
2836
+ }, z.core.$strict>, z.ZodObject<{
2837
+ __call: z.ZodString;
2838
+ }, z.core.$strict>]>]>>>;
2839
+ secretsImport: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
2840
+ id: z.ZodString;
2841
+ name: z.ZodString;
2842
+ field: z.ZodOptional<z.ZodString>;
2843
+ }, z.core.$strict>>>;
2844
+ command: z.ZodOptional<z.ZodArray<z.ZodString>>;
2845
+ entryPoint: z.ZodOptional<z.ZodArray<z.ZodString>>;
2846
+ essential: z.ZodOptional<z.ZodBoolean>;
2847
+ healthCheck: z.ZodOptional<z.ZodObject<{
2848
+ command: z.ZodArray<z.ZodString>;
2849
+ interval: z.ZodOptional<z.ZodNumber>;
2850
+ timeout: z.ZodOptional<z.ZodNumber>;
2851
+ retries: z.ZodOptional<z.ZodNumber>;
2852
+ startPeriod: z.ZodOptional<z.ZodNumber>;
2853
+ }, z.core.$strict>>;
2854
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
2855
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
2856
+ key: z.ZodString;
2857
+ sourceText: z.ZodString;
2858
+ }, z.core.$strict>>>;
2859
+ }, z.core.$strict>>>;
2860
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
2861
+ path: z.ZodOptional<z.ZodString>;
2862
+ host: z.ZodOptional<z.ZodString>;
2863
+ priority: z.ZodOptional<z.ZodNumber>;
2864
+ healthCheckPath: z.ZodOptional<z.ZodString>;
2865
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
2866
+ path: z.ZodOptional<z.ZodString>;
2867
+ host: z.ZodOptional<z.ZodString>;
2868
+ priority: z.ZodOptional<z.ZodNumber>;
2869
+ healthCheckPath: z.ZodOptional<z.ZodString>;
2870
+ }, z.core.$strict>>]>>;
2871
+ cpu: z.ZodOptional<z.ZodNumber>;
2872
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
2873
+ desiredCount: z.ZodOptional<z.ZodNumber>;
2874
+ scaling: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
2875
+ desiredCount: z.ZodOptional<z.ZodNumber>;
2876
+ minCapacity: z.ZodOptional<z.ZodNumber>;
2877
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
2878
+ scalingType: z.ZodOptional<z.ZodEnum<{
2879
+ CPU: "CPU";
2880
+ MEMORY: "MEMORY";
2881
+ }>>;
2882
+ }, z.core.$strict>]>>;
2883
+ capacityProvider: z.ZodEnum<{
2884
+ FARGATE: "FARGATE";
2885
+ FARGATE_SPOT: "FARGATE_SPOT";
2886
+ EC2: "EC2";
2887
+ }>;
2888
+ ec2Config: z.ZodOptional<z.ZodObject<{
2889
+ instanceType: z.ZodOptional<z.ZodString>;
2890
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
2891
+ ARM: "ARM";
2892
+ STANDARD: "STANDARD";
2893
+ }>>;
2894
+ minCapacity: z.ZodOptional<z.ZodNumber>;
2895
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
2896
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
2897
+ }, z.core.$strict>>;
2898
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
2899
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
2900
+ key: z.ZodString;
2901
+ sourceText: z.ZodString;
2902
+ }, z.core.$strict>>>;
2903
+ }, z.core.$strict>>>;
2904
+ dockerfilePath: z.ZodOptional<z.ZodString>;
2905
+ deployment: z.ZodOptional<z.ZodEnum<{
2906
+ code: "code";
2907
+ container: "container";
2908
+ }>>;
2909
+ codePath: z.ZodOptional<z.ZodString>;
2910
+ timeout: z.ZodOptional<z.ZodNumber>;
2911
+ memory: z.ZodOptional<z.ZodNumber>;
2912
+ handler: z.ZodOptional<z.ZodString>;
2913
+ runtime: z.ZodOptional<z.ZodString>;
2914
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
2915
+ __identifier: z.ZodString;
2916
+ }, z.core.$strict>, z.ZodObject<{
2917
+ __expression: z.ZodString;
2918
+ }, z.core.$strict>, z.ZodObject<{
2919
+ __call: z.ZodString;
2920
+ }, z.core.$strict>]>]>>>;
2921
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
2922
+ __identifier: z.ZodString;
2923
+ }, z.core.$strict>, z.ZodObject<{
2924
+ __expression: z.ZodString;
2925
+ }, z.core.$strict>, z.ZodObject<{
2926
+ __call: z.ZodString;
2927
+ }, z.core.$strict>]>]>>>;
2928
+ eventSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
2929
+ sourceType: z.ZodEnum<{
2930
+ dynamodb: "dynamodb";
2931
+ sqs: "sqs";
2932
+ eventbridge: "eventbridge";
2933
+ }>;
2934
+ sourceRef: z.ZodString;
2935
+ batchSize: z.ZodOptional<z.ZodNumber>;
2936
+ startingPosition: z.ZodOptional<z.ZodEnum<{
2937
+ TRIM_HORIZON: "TRIM_HORIZON";
2938
+ LATEST: "LATEST";
2939
+ }>>;
2940
+ maxBatchingWindow: z.ZodOptional<z.ZodNumber>;
2941
+ reportBatchItemFailures: z.ZodOptional<z.ZodBoolean>;
2942
+ }, z.core.$strict>>>;
2943
+ functionUrl: z.ZodOptional<z.ZodObject<{
2944
+ authType: z.ZodEnum<{
2945
+ NONE: "NONE";
2946
+ AWS_IAM: "AWS_IAM";
2947
+ }>;
2948
+ }, z.core.$strict>>;
2949
+ description: z.ZodOptional<z.ZodString>;
2950
+ scheduleExpression: z.ZodOptional<z.ZodString>;
2951
+ architecture: z.ZodOptional<z.ZodEnum<{
2952
+ ARM_64: "ARM_64";
2953
+ X86_64: "X86_64";
2954
+ }>>;
2955
+ ephemeralStorageSize: z.ZodOptional<z.ZodNumber>;
2956
+ functionName: z.ZodOptional<z.ZodString>;
2957
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
2958
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
2959
+ instanceType: z.ZodOptional<z.ZodString & z.ZodType<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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>>>;
2960
+ enableSSH: z.ZodOptional<z.ZodBoolean>;
2961
+ keyName: z.ZodOptional<z.ZodString>;
2962
+ userData: z.ZodOptional<z.ZodString>;
2963
+ securityGroups: z.ZodOptional<z.ZodArray<z.ZodString>>;
2964
+ variableName: z.ZodOptional<z.ZodString>;
2965
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
2966
+ key: z.ZodString;
2967
+ sourceText: z.ZodString;
2968
+ }, z.core.$strict>>>;
2969
+ }, z.core.$strict>>;
2970
+ dynamodb: z.ZodOptional<z.ZodArray<z.ZodObject<{
2971
+ name: z.ZodString;
2972
+ partitionKey: z.ZodObject<{
2973
+ name: z.ZodString;
2974
+ type: z.ZodEnum<{
2975
+ S: "S";
2976
+ N: "N";
2977
+ B: "B";
2978
+ }>;
2979
+ }, z.core.$strict>;
2980
+ sortKey: z.ZodOptional<z.ZodObject<{
2981
+ name: z.ZodString;
2982
+ type: z.ZodEnum<{
2983
+ S: "S";
2984
+ N: "N";
2985
+ B: "B";
2986
+ }>;
2987
+ }, z.core.$strict>>;
2988
+ globalSecondaryIndexes: z.ZodOptional<z.ZodArray<z.ZodObject<{
2989
+ indexName: z.ZodString;
2990
+ partitionKey: z.ZodObject<{
2991
+ name: z.ZodString;
2992
+ type: z.ZodEnum<{
2993
+ S: "S";
2994
+ N: "N";
2995
+ B: "B";
2996
+ }>;
2997
+ }, z.core.$strict>;
2998
+ sortKey: z.ZodOptional<z.ZodObject<{
2999
+ name: z.ZodString;
3000
+ type: z.ZodEnum<{
3001
+ S: "S";
3002
+ N: "N";
3003
+ B: "B";
3004
+ }>;
3005
+ }, z.core.$strict>>;
3006
+ }, z.core.$strict>>>;
3007
+ ttlAttribute: z.ZodOptional<z.ZodString>;
3008
+ stream: z.ZodOptional<z.ZodBoolean>;
3009
+ variableName: z.ZodOptional<z.ZodString>;
3010
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
3011
+ key: z.ZodString;
3012
+ sourceText: z.ZodString;
3013
+ }, z.core.$strict>>>;
3014
+ }, z.core.$strict>>>;
3015
+ sqs: z.ZodOptional<z.ZodArray<z.ZodObject<{
3016
+ name: z.ZodString;
3017
+ queueType: z.ZodDefault<z.ZodEnum<{
3018
+ standard: "standard";
3019
+ fifo: "fifo";
3020
+ }>>;
3021
+ visibilityTimeout: z.ZodOptional<z.ZodNumber>;
3022
+ retentionPeriod: z.ZodOptional<z.ZodNumber>;
3023
+ contentBasedDeduplication: z.ZodOptional<z.ZodBoolean>;
3024
+ variableName: z.ZodOptional<z.ZodString>;
3025
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
3026
+ key: z.ZodString;
3027
+ sourceText: z.ZodString;
3028
+ }, z.core.$strict>>>;
3029
+ }, z.core.$strict>>>;
3030
+ cdn: z.ZodOptional<z.ZodObject<{
3031
+ name: z.ZodString;
3032
+ defaultOriginRef: z.ZodString;
3033
+ behaviours: z.ZodOptional<z.ZodArray<z.ZodObject<{
3034
+ pathPattern: z.ZodString;
3035
+ originRef: z.ZodString;
3036
+ cachePolicy: z.ZodOptional<z.ZodEnum<{
3037
+ CACHING_OPTIMIZED: "CACHING_OPTIMIZED";
3038
+ CACHING_DISABLED: "CACHING_DISABLED";
3039
+ }>>;
3040
+ }, z.core.$strict>>>;
3041
+ customDomain: z.ZodOptional<z.ZodString>;
3042
+ certificateArn: z.ZodOptional<z.ZodString>;
3043
+ accessGate: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodObject<{
3044
+ type: z.ZodLiteral<"basic-auth">;
3045
+ username: z.ZodString;
3046
+ password: z.ZodString;
3047
+ }, z.core.$strict>]>>;
3048
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
3049
+ key: z.ZodString;
3050
+ sourceText: z.ZodString;
3051
+ }, z.core.$strict>>>;
3052
+ }, z.core.$strict>>;
3053
+ importedResources: z.ZodDefault<z.ZodArray<z.ZodObject<{
3054
+ id: z.ZodString;
3055
+ type: z.ZodEnum<{
3056
+ s3: "s3";
3057
+ ecs: "ecs";
3058
+ lambda: "lambda";
3059
+ ec2: "ec2";
3060
+ rds: "rds";
3061
+ aurora: "aurora";
3062
+ vpc: "vpc";
3063
+ elasticache: "elasticache";
3064
+ }>;
3065
+ name: z.ZodString;
3066
+ physicalId: z.ZodString;
3067
+ stack: z.ZodEnum<{
3068
+ storage: "storage";
3069
+ compute: "compute";
3070
+ network: "network";
3071
+ }>;
3072
+ cdkCode: z.ZodString;
3073
+ imports: z.ZodArray<z.ZodString>;
3074
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3075
+ }, z.core.$strict>>>;
3076
+ customCodeBlocks: z.ZodOptional<z.ZodArray<z.ZodObject<{
3077
+ sourceText: z.ZodString;
3078
+ position: z.ZodEnum<{
3079
+ "before-imports": "before-imports";
3080
+ "after-imports": "after-imports";
3081
+ "after-app-init": "after-app-init";
3082
+ "after-tags": "after-tags";
3083
+ "after-resource": "after-resource";
3084
+ "end-of-file": "end-of-file";
3085
+ }>;
3086
+ afterManagedResource: z.ZodOptional<z.ZodObject<{
3087
+ type: z.ZodEnum<{
3088
+ custom: "custom";
3089
+ storage: "storage";
3090
+ database: "database";
3091
+ compute: "compute";
3092
+ pattern: "pattern";
3093
+ cdn: "cdn";
3094
+ network: "network";
3095
+ messaging: "messaging";
3096
+ import: "import";
3097
+ "app-init": "app-init";
3098
+ tags: "tags";
3099
+ }>;
3100
+ name: z.ZodOptional<z.ZodString>;
3101
+ }, z.core.$strict>>;
3102
+ originalLine: z.ZodOptional<z.ZodNumber>;
3103
+ leadingComments: z.ZodOptional<z.ZodArray<z.ZodString>>;
3104
+ orphaned: z.ZodOptional<z.ZodBoolean>;
3105
+ orphanedComment: z.ZodOptional<z.ZodString>;
3106
+ }, z.core.$strict>>>;
3107
+ additionalManagedImports: z.ZodOptional<z.ZodArray<z.ZodObject<{
3108
+ moduleSpecifier: z.ZodString;
3109
+ namedImports: z.ZodArray<z.ZodString>;
3110
+ defaultImport: z.ZodOptional<z.ZodString>;
3111
+ }, z.core.$strict>>>;
3112
+ }, z.core.$strict>;
3113
+ /**
3114
+ * Compute generator schema using discriminated union.
3115
+ * Ensures type-specific fields are only allowed for the correct compute type.
3116
+ */
3117
+ export declare const ComputeGeneratorSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3118
+ appName: z.ZodString;
3119
+ computeName: z.ZodString;
3120
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
3121
+ connectionConfig: z.ZodOptional<z.ZodObject<{
3122
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
3123
+ }, z.core.$strict>>;
3124
+ type: z.ZodLiteral<"ecs">;
3125
+ cluster: z.ZodOptional<z.ZodObject<{
3126
+ domain: z.ZodOptional<z.ZodString>;
3127
+ loadBalancer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodLiteral<"public">, z.ZodLiteral<"internal">]>>;
3128
+ directAccess: z.ZodOptional<z.ZodBoolean>;
3129
+ }, z.core.$strict>>;
3130
+ services: z.ZodArray<z.ZodObject<{
3131
+ name: z.ZodString;
3132
+ dockerfilePath: z.ZodOptional<z.ZodString>;
3133
+ dockerTarget: z.ZodOptional<z.ZodString>;
3134
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
3135
+ needsStorageConnection: z.ZodOptional<z.ZodBoolean>;
3136
+ image: z.ZodOptional<z.ZodString>;
3137
+ containers: z.ZodOptional<z.ZodArray<z.ZodObject<{
3138
+ name: z.ZodOptional<z.ZodString>;
3139
+ image: z.ZodOptional<z.ZodString>;
3140
+ port: z.ZodOptional<z.ZodNumber>;
3141
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
3142
+ __identifier: z.ZodString;
3143
+ }, z.core.$strict>, z.ZodObject<{
3144
+ __expression: z.ZodString;
3145
+ }, z.core.$strict>, z.ZodObject<{
3146
+ __call: z.ZodString;
3147
+ }, z.core.$strict>]>]>>>;
3148
+ secretsImport: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
3149
+ id: z.ZodString;
3150
+ name: z.ZodString;
3151
+ field: z.ZodOptional<z.ZodString>;
3152
+ }, z.core.$strict>>>;
3153
+ command: z.ZodOptional<z.ZodArray<z.ZodString>>;
3154
+ entryPoint: z.ZodOptional<z.ZodArray<z.ZodString>>;
3155
+ essential: z.ZodOptional<z.ZodBoolean>;
3156
+ healthCheck: z.ZodOptional<z.ZodObject<{
3157
+ command: z.ZodArray<z.ZodString>;
3158
+ interval: z.ZodOptional<z.ZodNumber>;
3159
+ timeout: z.ZodOptional<z.ZodNumber>;
3160
+ retries: z.ZodOptional<z.ZodNumber>;
3161
+ startPeriod: z.ZodOptional<z.ZodNumber>;
3162
+ }, z.core.$strict>>;
3163
+ ssmSecrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
3164
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
3165
+ key: z.ZodString;
3166
+ sourceText: z.ZodString;
3167
+ }, z.core.$strict>>>;
3168
+ }, z.core.$strict>>>;
3169
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
3170
+ path: z.ZodOptional<z.ZodString>;
3171
+ host: z.ZodOptional<z.ZodString>;
3172
+ priority: z.ZodOptional<z.ZodNumber>;
3173
+ healthCheckPath: z.ZodOptional<z.ZodString>;
3174
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
3175
+ path: z.ZodOptional<z.ZodString>;
3176
+ host: z.ZodOptional<z.ZodString>;
3177
+ priority: z.ZodOptional<z.ZodNumber>;
3178
+ healthCheckPath: z.ZodOptional<z.ZodString>;
3179
+ }, z.core.$strict>>]>>;
3180
+ cpu: z.ZodOptional<z.ZodNumber>;
3181
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
3182
+ desiredCount: z.ZodOptional<z.ZodNumber>;
3183
+ scaling: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3184
+ desiredCount: z.ZodOptional<z.ZodNumber>;
3185
+ minCapacity: z.ZodOptional<z.ZodNumber>;
3186
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
3187
+ scalingType: z.ZodOptional<z.ZodEnum<{
3188
+ CPU: "CPU";
3189
+ MEMORY: "MEMORY";
3190
+ }>>;
3191
+ }, z.core.$strict>]>>;
3192
+ capacityProvider: z.ZodEnum<{
3193
+ FARGATE: "FARGATE";
3194
+ FARGATE_SPOT: "FARGATE_SPOT";
3195
+ EC2: "EC2";
3196
+ }>;
3197
+ ec2Config: z.ZodOptional<z.ZodObject<{
3198
+ instanceType: z.ZodOptional<z.ZodString>;
3199
+ amiHardwareType: z.ZodOptional<z.ZodEnum<{
3200
+ ARM: "ARM";
3201
+ STANDARD: "STANDARD";
3202
+ }>>;
3203
+ minCapacity: z.ZodOptional<z.ZodNumber>;
3204
+ maxCapacity: z.ZodOptional<z.ZodNumber>;
3205
+ memoryLimitMiB: z.ZodOptional<z.ZodNumber>;
3206
+ }, z.core.$strict>>;
3207
+ ssmSecretsPath: z.ZodOptional<z.ZodString>;
3208
+ extraProperties: z.ZodOptional<z.ZodArray<z.ZodObject<{
3209
+ key: z.ZodString;
3210
+ sourceText: z.ZodString;
3211
+ }, z.core.$strict>>>;
3212
+ }, z.core.$strict>>;
3213
+ dockerfilePath: z.ZodOptional<z.ZodString>;
3214
+ }, z.core.$strict>, z.ZodObject<{
3215
+ appName: z.ZodString;
3216
+ computeName: z.ZodString;
3217
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
3218
+ connectionConfig: z.ZodOptional<z.ZodObject<{
3219
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
3220
+ }, z.core.$strict>>;
3221
+ type: z.ZodLiteral<"lambda">;
3222
+ timeout: z.ZodOptional<z.ZodNumber>;
3223
+ memory: z.ZodOptional<z.ZodNumber>;
3224
+ handler: z.ZodOptional<z.ZodString>;
3225
+ runtime: z.ZodOptional<z.ZodString>;
3226
+ environment: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
3227
+ __identifier: z.ZodString;
3228
+ }, z.core.$strict>, z.ZodObject<{
3229
+ __expression: z.ZodString;
3230
+ }, z.core.$strict>, z.ZodObject<{
3231
+ __call: z.ZodString;
3232
+ }, z.core.$strict>]>]>>>;
3233
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodUnion<readonly [z.ZodObject<{
3234
+ __identifier: z.ZodString;
3235
+ }, z.core.$strict>, z.ZodObject<{
3236
+ __expression: z.ZodString;
3237
+ }, z.core.$strict>, z.ZodObject<{
3238
+ __call: z.ZodString;
3239
+ }, z.core.$strict>]>]>>>;
3240
+ description: z.ZodOptional<z.ZodString>;
3241
+ functionUrl: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
3242
+ authType: z.ZodOptional<z.ZodEnum<{
3243
+ NONE: "NONE";
3244
+ AWS_IAM: "AWS_IAM";
3245
+ }>>;
3246
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
3247
+ eventSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
3248
+ sourceType: z.ZodEnum<{
3249
+ dynamodb: "dynamodb";
3250
+ sqs: "sqs";
3251
+ eventbridge: "eventbridge";
3252
+ }>;
3253
+ sourceRef: z.ZodString;
3254
+ batchSize: z.ZodOptional<z.ZodNumber>;
3255
+ startingPosition: z.ZodOptional<z.ZodEnum<{
3256
+ TRIM_HORIZON: "TRIM_HORIZON";
3257
+ LATEST: "LATEST";
3258
+ }>>;
3259
+ maxBatchingWindow: z.ZodOptional<z.ZodNumber>;
3260
+ reportBatchItemFailures: z.ZodOptional<z.ZodBoolean>;
3261
+ }, z.core.$strict>>>;
3262
+ }, z.core.$strict>, z.ZodObject<{
3263
+ appName: z.ZodString;
3264
+ computeName: z.ZodString;
3265
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
3266
+ connectionConfig: z.ZodOptional<z.ZodObject<{
3267
+ connectToDatabase: z.ZodOptional<z.ZodArray<z.ZodString>>;
3268
+ }, z.core.$strict>>;
3269
+ type: z.ZodLiteral<"ec2">;
3270
+ instanceType: z.ZodOptional<z.ZodString & z.ZodType<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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<"t4g.micro" | "t4g.small" | "t4g.large" | "r6g.xlarge" | "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.medium" | "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.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>>>;
3271
+ enableSSH: z.ZodOptional<z.ZodBoolean>;
3272
+ keyName: z.ZodOptional<z.ZodString>;
3273
+ userData: z.ZodOptional<z.ZodString>;
3274
+ securityGroups: z.ZodOptional<z.ZodArray<z.ZodString>>;
3275
+ }, z.core.$strict>], "type">;
3276
+ export declare const S3GeneratorSchema: z.ZodObject<{
3277
+ appName: z.ZodString;
3278
+ bucketName: z.ZodString;
3279
+ nameProvidedByFlag: z.ZodOptional<z.ZodBoolean>;
3280
+ storagePreset: z.ZodOptional<z.ZodEnum<{
3281
+ standard: "standard";
3282
+ assets: "assets";
3283
+ upload: "upload";
3284
+ website: "website";
3285
+ }>>;
3286
+ publicReadAccess: z.ZodOptional<z.ZodBoolean>;
3287
+ websiteHosting: z.ZodOptional<z.ZodObject<{
3288
+ indexDocument: z.ZodString;
3289
+ errorDocument: z.ZodOptional<z.ZodString>;
3290
+ }, z.core.$strict>>;
3291
+ backupVaultTier: z.ZodOptional<z.ZodEnum<{
3292
+ standard: "standard";
3293
+ resilient: "resilient";
3294
+ enterprise: "enterprise";
3295
+ }>>;
3296
+ versioned: z.ZodOptional<z.ZodBoolean>;
3297
+ encryption: z.ZodOptional<z.ZodEnum<{
3298
+ KMS: "KMS";
3299
+ AES256: "AES256";
3300
+ }>>;
3301
+ kmsKeyArn: z.ZodOptional<z.ZodString>;
3302
+ cors: z.ZodOptional<z.ZodArray<z.ZodObject<{
3303
+ allowedOrigins: z.ZodArray<z.ZodString>;
3304
+ allowedMethods: z.ZodArray<z.ZodString>;
3305
+ }, z.core.$strict>>>;
3306
+ connectionConfig: z.ZodOptional<z.ZodObject<{
3307
+ connectToCompute: z.ZodOptional<z.ZodArray<z.ZodString>>;
3308
+ connectToServices: z.ZodOptional<z.ZodArray<z.ZodString>>;
3309
+ }, z.core.$strict>>;
3310
+ }, z.core.$strict>;
3311
+ /**
3312
+ * Simple routing configuration for application generator services.
3313
+ * Matches what the UI sends (path is required, priority optional).
3314
+ */
3315
+ export declare const ApplicationServiceRoutingSchema: z.ZodObject<{
3316
+ path: z.ZodString;
3317
+ priority: z.ZodOptional<z.ZodNumber>;
3318
+ }, z.core.$strict>;
3319
+ /**
3320
+ * Service configuration for application generator.
3321
+ * Used to configure multi-service ECS applications.
3322
+ */
3323
+ export declare const ApplicationServiceConfigSchema: z.ZodObject<{
3324
+ name: z.ZodString;
3325
+ dockerfilePath: z.ZodOptional<z.ZodString>;
3326
+ containerPort: z.ZodOptional<z.ZodNumber>;
3327
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
3328
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
3329
+ path: z.ZodString;
3330
+ priority: z.ZodOptional<z.ZodNumber>;
3331
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
3332
+ path: z.ZodString;
3333
+ priority: z.ZodOptional<z.ZodNumber>;
3334
+ }, z.core.$strict>>]>>;
3335
+ }, z.core.$strict>;
3336
+ export type ApplicationServiceConfig = z.infer<typeof ApplicationServiceConfigSchema>;
3337
+ /**
3338
+ * Pattern tier schema for OpenNext patterns (Payload, Next.js).
3339
+ * Defines configuration tiers: lightweight, standard, resilient, custom.
3340
+ */
3341
+ export declare const PatternTierSchema: z.ZodEnum<{
3342
+ standard: "standard";
3343
+ resilient: "resilient";
3344
+ lightweight: "lightweight";
3345
+ custom: "custom";
3346
+ }>;
3347
+ export type PatternTier = z.infer<typeof PatternTierSchema>;
3348
+ /**
3349
+ * Custom database configuration for patterns.
3350
+ * Used when patternTier is "custom".
3351
+ */
3352
+ export declare const CustomPatternDatabaseSchema: z.ZodObject<{
3353
+ type: z.ZodEnum<{
3354
+ Aurora: "Aurora";
3355
+ Instance: "Instance";
3356
+ }>;
3357
+ instanceType: z.ZodOptional<z.ZodString>;
3358
+ backupRetention: z.ZodOptional<z.ZodNumber>;
3359
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
3360
+ encryption: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
3361
+ useCMK: z.ZodLiteral<true>;
3362
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
3363
+ }, z.core.$strict>;
3364
+ export type CustomPatternDatabase = z.infer<typeof CustomPatternDatabaseSchema>;
3365
+ /**
3366
+ * Custom compute configuration for patterns.
3367
+ * Used when patternTier is "custom".
3368
+ */
3369
+ export declare const CustomPatternComputeSchema: z.ZodObject<{
3370
+ memorySize: z.ZodOptional<z.ZodNumber>;
3371
+ timeout: z.ZodOptional<z.ZodNumber>;
3372
+ }, z.core.$strict>;
3373
+ export type CustomPatternCompute = z.infer<typeof CustomPatternComputeSchema>;
3374
+ export declare const ApplicationGeneratorSchema: z.ZodObject<{
3375
+ name: z.ZodString;
3376
+ type: z.ZodEnum<{
3377
+ standard: "standard";
3378
+ resilient: "resilient";
3379
+ enterprise: "enterprise";
3380
+ tinkerer: "tinkerer";
3381
+ lightweight: "lightweight";
3382
+ custom: "custom";
3383
+ }>;
3384
+ pattern: z.ZodOptional<z.ZodEnum<{
3385
+ payload: "payload";
3386
+ nextjs: "nextjs";
3387
+ }>>;
3388
+ patternTier: z.ZodOptional<z.ZodEnum<{
3389
+ standard: "standard";
3390
+ resilient: "resilient";
3391
+ lightweight: "lightweight";
3392
+ custom: "custom";
3393
+ }>>;
3394
+ patternDomain: z.ZodOptional<z.ZodString>;
3395
+ customDatabase: z.ZodOptional<z.ZodObject<{
3396
+ type: z.ZodEnum<{
3397
+ Aurora: "Aurora";
3398
+ Instance: "Instance";
3399
+ }>;
3400
+ instanceType: z.ZodOptional<z.ZodString>;
3401
+ backupRetention: z.ZodOptional<z.ZodNumber>;
3402
+ deletionProtection: z.ZodOptional<z.ZodBoolean>;
3403
+ encryption: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
3404
+ useCMK: z.ZodLiteral<true>;
3405
+ }, z.core.$strict>, z.ZodLiteral<false>]>>;
3406
+ }, z.core.$strict>>;
3407
+ customCompute: z.ZodOptional<z.ZodObject<{
3408
+ memorySize: z.ZodOptional<z.ZodNumber>;
3409
+ timeout: z.ZodOptional<z.ZodNumber>;
3410
+ }, z.core.$strict>>;
3411
+ region: z.ZodOptional<z.ZodString>;
3412
+ owner: z.ZodOptional<z.ZodString>;
3413
+ includeDatabase: z.ZodOptional<z.ZodBoolean>;
3414
+ databaseName: z.ZodOptional<z.ZodString>;
3415
+ vpcId: z.ZodOptional<z.ZodString>;
3416
+ network: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3417
+ maxAzs: z.ZodOptional<z.ZodNumber>;
3418
+ natGateways: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3419
+ count: z.ZodOptional<z.ZodNumber>;
3420
+ }, z.core.$strict>]>>;
3421
+ flowLogs: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3422
+ destination: z.ZodOptional<z.ZodEnum<{
3423
+ cloudwatch: "cloudwatch";
3424
+ s3: "s3";
3425
+ }>>;
3426
+ retentionDays: z.ZodOptional<z.ZodNumber>;
3427
+ trafficType: z.ZodOptional<z.ZodEnum<{
3428
+ ALL: "ALL";
3429
+ ACCEPT: "ACCEPT";
3430
+ REJECT: "REJECT";
3431
+ }>>;
3432
+ }, z.core.$strict>]>>;
3433
+ vpcEndpoints: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3434
+ gateway: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3435
+ s3: z.ZodOptional<z.ZodBoolean>;
3436
+ dynamodb: z.ZodOptional<z.ZodBoolean>;
3437
+ }, z.core.$strict>]>>;
3438
+ interface: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<false>, z.ZodObject<{
3439
+ ecr: z.ZodOptional<z.ZodBoolean>;
3440
+ secretsManager: z.ZodOptional<z.ZodBoolean>;
3441
+ kms: z.ZodOptional<z.ZodBoolean>;
3442
+ cloudwatchLogs: z.ZodOptional<z.ZodBoolean>;
3443
+ ssm: z.ZodOptional<z.ZodBoolean>;
3444
+ sts: z.ZodOptional<z.ZodBoolean>;
3445
+ }, z.core.$strict>]>>;
3446
+ }, z.core.$strict>]>>;
3447
+ cidrMask: z.ZodOptional<z.ZodNumber>;
3448
+ }, z.core.$strict>]>>;
3449
+ services: z.ZodOptional<z.ZodArray<z.ZodObject<{
3450
+ name: z.ZodString;
3451
+ dockerfilePath: z.ZodOptional<z.ZodString>;
3452
+ containerPort: z.ZodOptional<z.ZodNumber>;
3453
+ needsDatabaseConnection: z.ZodOptional<z.ZodBoolean>;
3454
+ routing: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
3455
+ path: z.ZodString;
3456
+ priority: z.ZodOptional<z.ZodNumber>;
3457
+ }, z.core.$strict>, z.ZodArray<z.ZodObject<{
3458
+ path: z.ZodString;
3459
+ priority: z.ZodOptional<z.ZodNumber>;
3460
+ }, z.core.$strict>>]>>;
3461
+ }, z.core.$strict>>>;
3462
+ snapshotIdentifier: z.ZodOptional<z.ZodString>;
3463
+ snapshotUsername: z.ZodOptional<z.ZodString>;
3464
+ }, z.core.$strict>;
3465
+ export declare const OrganisationNameSchema: z.ZodString;
3466
+ export declare const EmailSchema: z.ZodString;
3467
+ export declare const RegionSchema: z.ZodString;
3468
+ export declare const OrganisationGeneratorSchema: z.ZodObject<{
3469
+ name: z.ZodString;
3470
+ email: z.ZodString;
3471
+ accountName: z.ZodOptional<z.ZodString>;
3472
+ primaryRegion: z.ZodDefault<z.ZodOptional<z.ZodString>>;
3473
+ secondaryRegions: z.ZodOptional<z.ZodArray<z.ZodString>>;
3474
+ force: z.ZodOptional<z.ZodBoolean>;
3475
+ }, z.core.$strict>;
3476
+ export declare function getZodErrorMessage(error: z.ZodError<unknown>): string;
3477
+ export type ProxyConfig = z.infer<typeof ProxyConfigSchema>;
3478
+ export type ReadReplicaConfig = z.infer<typeof ReadReplicaConfigSchema>;
3479
+ export type ContainerConfig = z.infer<typeof ContainerConfigSchema>;
3480
+ export type CredentialsConfig = z.infer<typeof CredentialsConfigSchema>;
3481
+ export type EcsClusterConfig = z.infer<typeof EcsClusterConfigSchema>;
3482
+ export type EcsRoutingConfig = z.infer<typeof EcsRoutingConfigSchema>;
3483
+ export type EcsScalingConfig = z.infer<typeof EcsScalingConfigSchema>;
3484
+ export type EcsServiceConfig = z.infer<typeof EcsServiceConfigSchema>;
3485
+ export type DatabaseInsightsConfig = z.infer<typeof DatabaseInsightsConfigSchema>;
3486
+ export type EncryptionConfig = z.infer<typeof EncryptionConfigSchema>;
3487
+ export type AuroraWriterConfig = z.infer<typeof AuroraWriterConfigSchema>;
3488
+ export type AuroraReadersConfig = z.infer<typeof AuroraReadersConfigSchema>;
3489
+ export type NatConfig = z.infer<typeof NatConfigSchema>;
3490
+ export type FlowLogConfig = z.infer<typeof FlowLogConfigSchema>;
3491
+ export type GatewayEndpointsConfig = z.infer<typeof GatewayEndpointsConfigSchema>;
3492
+ export type InterfaceEndpointsConfig = z.infer<typeof InterfaceEndpointsConfigSchema>;
3493
+ export type VpcEndpointsConfig = z.infer<typeof VpcEndpointsConfigSchema>;
3494
+ export type DatabaseResourcePlan = z.infer<typeof DatabaseResourcePlanSchema>;
3495
+ export type S3ResourcePlan = z.infer<typeof S3ResourcePlanSchema>;
3496
+ export type ComputeResourcePlan = z.infer<typeof ComputeResourcePlanSchema>;
3497
+ export type NetworkResourcePlan = z.infer<typeof NetworkResourcePlanSchema>;
3498
+ export type AdditionalNetworkResourcePlan = z.infer<typeof AdditionalNetworkResourcePlanSchema>;
3499
+ export type ImportedResourcePlan = z.infer<typeof ImportedResourcePlanSchema>;
3500
+ export type ApplicationResourcePlan = z.infer<typeof ApplicationResourcePlanSchema>;
3501
+ export type DynamoDBResourcePlan = z.infer<typeof DynamoDBResourcePlanSchema>;
3502
+ export type SQSResourcePlan = z.infer<typeof SQSResourcePlanSchema>;
3503
+ export type CDNResourcePlan = z.infer<typeof CDNResourcePlanSchema>;
3504
+ export declare const TunnelGeneratorSchema: z.ZodObject<{
3505
+ appName: z.ZodString;
3506
+ instanceType: z.ZodOptional<z.ZodString>;
3507
+ }, z.core.$strict>;
3508
+ export type DatabaseGeneratorOptions = z.infer<typeof DatabaseGeneratorSchema>;
3509
+ export type ComputeGeneratorOptions = z.infer<typeof ComputeGeneratorSchema>;
3510
+ export type NetworkGeneratorOptions = z.infer<typeof NetworkGeneratorSchema>;
3511
+ export type S3GeneratorOptions = z.infer<typeof S3GeneratorSchema>;
3512
+ export type TunnelGeneratorOptions = z.infer<typeof TunnelGeneratorSchema>;
3513
+ export type ApplicationGeneratorOptions = z.infer<typeof ApplicationGeneratorSchema>;
3514
+ export type OrganisationGeneratorOptions = z.infer<typeof OrganisationGeneratorSchema>;
3515
+ export type PatternLambdaConfig = z.infer<typeof PatternLambdaConfigSchema>;
3516
+ export type PatternStorageBucketConfig = z.infer<typeof PatternStorageBucketConfigSchema>;
3517
+ export type PatternQueueConfig = z.infer<typeof PatternQueueConfigSchema>;
3518
+ export type PayloadDatabaseConfig = z.infer<typeof PayloadDatabaseConfigSchema>;
3519
+ export type PayloadComputeConfig = z.infer<typeof PayloadComputeConfigSchema>;
3520
+ export type PayloadStorageConfig = z.infer<typeof PayloadStorageConfigSchema>;
3521
+ export type PayloadMessagingConfig = z.infer<typeof PayloadMessagingConfigSchema>;
3522
+ export type PayloadCdnConfig = z.infer<typeof PayloadCdnConfigSchema>;
3523
+ export type PayloadPatternConfig = z.infer<typeof PayloadPatternConfigSchema>;
3524
+ export type NextJSPatternConfig = z.infer<typeof NextJSPatternConfigSchema>;
3525
+ export type PatternConfig = z.infer<typeof PatternConfigSchema>;
3526
+ export type IdentifierValue = z.infer<typeof IdentifierValueSchema>;
3527
+ export type ExpressionValue = z.infer<typeof ExpressionValueSchema>;
3528
+ export type CallValue = z.infer<typeof CallValueSchema>;
3529
+ export type SpecialValue = z.infer<typeof SpecialValueSchema>;
3530
+ export type EnvironmentValue = z.infer<typeof EnvironmentValueSchema>;
3531
+ export type CustomCodePosition = z.infer<typeof CustomCodePositionSchema>;
3532
+ export type StatementType = z.infer<typeof StatementTypeSchema>;
3533
+ export type CustomCodeBlock = z.infer<typeof CustomCodeBlockSchema>;
3534
+ export type ExtraProperty = z.infer<typeof ExtraPropertySchema>;