@resistdesign/voltra 3.0.0-alpha.2 → 3.0.0-alpha.21

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 (375) hide show
  1. package/README.md +327 -7
  2. package/api/DBX/DBXAsserts.d.ts +95 -0
  3. package/api/DBX/DBXRequest.d.ts +5 -0
  4. package/api/DBX/DBXRuntime.d.ts +5 -0
  5. package/api/DBX/DBXScenarioConfig.d.ts +9 -0
  6. package/api/DBX/DBXSeed.d.ts +124 -0
  7. package/api/DBX/DBXTypes.d.ts +176 -0
  8. package/api/DBX/index.d.ts +8 -0
  9. package/api/DataAccessControl.d.ts +220 -0
  10. package/api/Indexing/API.d.ts +224 -0
  11. package/api/Indexing/Cursor.d.ts +101 -0
  12. package/api/Indexing/Handler/Config.d.ts +39 -0
  13. package/api/Indexing/Handler.d.ts +166 -0
  14. package/api/Indexing/Trace.d.ts +54 -0
  15. package/api/Indexing/Types.d.ts +204 -0
  16. package/api/Indexing/ddb/AwsSdkV3Adapter.d.ts +8 -0
  17. package/api/Indexing/ddb/Types.d.ts +169 -0
  18. package/api/Indexing/docId.d.ts +27 -0
  19. package/api/Indexing/exact/ExactDdb.d.ts +58 -0
  20. package/api/Indexing/exact/ExactIndex.d.ts +90 -0
  21. package/api/Indexing/exact/ExactS3.d.ts +41 -0
  22. package/api/Indexing/fieldQualification.d.ts +12 -0
  23. package/api/Indexing/fulltext/FullTextDdbBackend.d.ts +210 -0
  24. package/api/Indexing/fulltext/FullTextMemoryBackend.d.ts +93 -0
  25. package/api/Indexing/fulltext/Schema.d.ts +164 -0
  26. package/api/Indexing/hashUniversal.d.ts +13 -0
  27. package/api/Indexing/index.d.ts +45 -0
  28. package/api/Indexing/lossy/LossyDdb.d.ts +43 -0
  29. package/api/Indexing/lossy/LossyIndex.d.ts +72 -0
  30. package/api/Indexing/lossy/LossyS3.d.ts +40 -0
  31. package/api/Indexing/rel/Cursor.d.ts +25 -0
  32. package/api/Indexing/rel/Handlers.d.ts +143 -0
  33. package/api/Indexing/rel/RelationalDdb.d.ts +169 -0
  34. package/api/Indexing/rel/RelationalInMemoryBackend.d.ts +38 -0
  35. package/api/Indexing/rel/Types.d.ts +69 -0
  36. package/api/Indexing/structured/Cursor.d.ts +26 -0
  37. package/api/Indexing/structured/Handlers.d.ts +128 -0
  38. package/api/Indexing/structured/SearchStructured.d.ts +44 -0
  39. package/api/Indexing/structured/StructuredDdb.d.ts +166 -0
  40. package/api/Indexing/structured/StructuredDdbBackend.d.ts +109 -0
  41. package/api/Indexing/structured/StructuredInMemoryBackend.d.ts +34 -0
  42. package/api/Indexing/structured/StructuredInMemoryIndex.d.ts +58 -0
  43. package/api/Indexing/structured/StructuredStringLike.d.ts +25 -0
  44. package/api/Indexing/structured/StructuredWriter.d.ts +61 -0
  45. package/api/Indexing/structured/Types.d.ts +126 -0
  46. package/api/Indexing/structured/index.d.ts +9 -0
  47. package/api/Indexing/tokenize.d.ts +31 -0
  48. package/api/ORM/DACUtils.d.ts +270 -0
  49. package/api/ORM/ListItemUtils.d.ts +40 -0
  50. package/api/ORM/ORMRouteMap.d.ts +55 -0
  51. package/api/ORM/TypeInfoORMService.d.ts +555 -0
  52. package/api/ORM/drivers/DynamoDBDataItemDBDriver/ConfigTypes.d.ts +229 -0
  53. package/api/ORM/drivers/DynamoDBDataItemDBDriver.d.ts +89 -0
  54. package/api/ORM/drivers/InMemoryDataItemDBDriver/ConfigTypes.d.ts +4 -0
  55. package/api/ORM/drivers/InMemoryDataItemDBDriver.d.ts +55 -0
  56. package/api/ORM/drivers/InMemoryFileItemDBDriver/ConfigTypes.d.ts +13 -0
  57. package/api/ORM/drivers/InMemoryFileItemDBDriver.d.ts +98 -0
  58. package/api/ORM/drivers/InMemoryItemRelationshipDBDriver.d.ts +16 -0
  59. package/api/ORM/drivers/IndexingRelationshipDriver.d.ts +123 -0
  60. package/api/ORM/drivers/S3FileItemDBDriver/ConfigTypes.d.ts +322 -0
  61. package/api/ORM/drivers/S3FileItemDBDriver/S3FileDriver.d.ts +118 -0
  62. package/{src/api → api}/ORM/drivers/S3FileItemDBDriver.d.ts +27 -0
  63. package/api/ORM/drivers/common/SupportedTypeInfoORMDBDrivers.d.ts +36 -0
  64. package/{src/api → api}/ORM/drivers/common/Types.d.ts +120 -0
  65. package/api/ORM/drivers/index.d.ts +7 -0
  66. package/api/ORM/index.d.ts +7 -0
  67. package/api/ORM/indexing/criteriaToStructuredWhere.d.ts +17 -0
  68. package/api/Router/AWS.d.ts +80 -0
  69. package/api/Router/Auth.d.ts +14 -0
  70. package/api/Router/CORS.d.ts +66 -0
  71. package/{src/api → api}/Router/Types.d.ts +70 -4
  72. package/api/Router/index.d.ts +89 -0
  73. package/api/index.d.ts +68 -0
  74. package/api/index.js +9204 -0
  75. package/app/forms/Engine.d.ts +20 -0
  76. package/app/forms/core/createAutoField.d.ts +35 -0
  77. package/app/forms/core/createFormRenderer.d.ts +24 -0
  78. package/app/forms/core/getFieldKind.d.ts +14 -0
  79. package/app/forms/core/index.d.ts +11 -0
  80. package/app/forms/core/mergeSuites.d.ts +22 -0
  81. package/app/forms/core/resolveSuite.d.ts +14 -0
  82. package/app/forms/core/types.d.ts +153 -0
  83. package/app/forms/index.d.ts +9 -0
  84. package/app/forms/types.d.ts +156 -0
  85. package/app/helpers/styled.d.ts +3 -0
  86. package/app/index.d.ts +98 -0
  87. package/app/index.js +1386 -0
  88. package/{src/app → app}/utils/ApplicationState.d.ts +115 -0
  89. package/{src/app → app}/utils/ApplicationStateLoader.d.ts +40 -0
  90. package/app/utils/Controller.d.ts +10 -0
  91. package/app/utils/Debug.d.ts +14 -0
  92. package/app/utils/EasyLayout.d.ts +89 -0
  93. package/app/utils/History.d.ts +148 -0
  94. package/app/utils/Route.d.ts +129 -0
  95. package/app/utils/RouteHistory.d.ts +26 -0
  96. package/app/utils/Service.d.ts +45 -0
  97. package/app/utils/TypeInfoORMAPIUtils.d.ts +94 -0
  98. package/app/utils/TypeInfoORMClient.d.ts +103 -0
  99. package/app/utils/easy-layout/computeAreaBounds.d.ts +5 -0
  100. package/app/utils/easy-layout/computeTracks.d.ts +16 -0
  101. package/app/utils/easy-layout/index.d.ts +5 -0
  102. package/app/utils/easy-layout/parseTemplate.d.ts +12 -0
  103. package/app/utils/easy-layout/types.d.ts +52 -0
  104. package/app/utils/easy-layout/validateAreas.d.ts +5 -0
  105. package/app/utils/index.d.ts +23 -0
  106. package/{src/common/TypeParsing → build}/TypeMapping.d.ts +8 -0
  107. package/build/TypeParsing.d.ts +10 -0
  108. package/build/index.d.ts +15 -0
  109. package/build/index.js +579 -0
  110. package/common/CommandLine/collectRequiredEnvironmentVariables.d.ts +9 -0
  111. package/common/CommandLine/index.d.ts +6 -0
  112. package/common/HelperTypes.d.ts +9 -0
  113. package/common/IdGeneration/getSimpleId.d.ts +8 -0
  114. package/{src/common → common}/ItemRelationshipInfoTypes.d.ts +19 -1
  115. package/common/ItemRelationships/ItemRelationshipValidation.d.ts +21 -0
  116. package/common/Logging/Utils.d.ts +19 -0
  117. package/common/Routing.d.ts +67 -0
  118. package/common/SearchTypes.d.ts +248 -0
  119. package/common/SearchUtils.d.ts +55 -0
  120. package/{src/common → common}/SearchValidation.d.ts +10 -0
  121. package/{src/common → common}/StringTransformers.d.ts +11 -0
  122. package/common/Testing/CLI.d.ts +6 -0
  123. package/common/Testing/CLI.js +432 -0
  124. package/{src/common → common}/Testing/Types.d.ts +103 -4
  125. package/{src/common → common}/Testing/Utils.d.ts +65 -1
  126. package/common/Testing/index.d.ts +8 -0
  127. package/common/TypeInfoDataItemUtils.d.ts +39 -0
  128. package/common/TypeInfoORM/Types.d.ts +342 -0
  129. package/common/TypeParsing/Constants.d.ts +4 -0
  130. package/{src/common → common}/TypeParsing/ParsingUtils/Constants.d.ts +3 -0
  131. package/{src/common → common}/TypeParsing/ParsingUtils/checkType.d.ts +6 -0
  132. package/{src/common → common}/TypeParsing/ParsingUtils/checkUnionType.d.ts +6 -0
  133. package/common/TypeParsing/ParsingUtils/extractCommentTags.d.ts +8 -0
  134. package/common/TypeParsing/ParsingUtils/extractLiteralValues.d.ts +12 -0
  135. package/common/TypeParsing/ParsingUtils/extractTypeDetails.d.ts +14 -0
  136. package/common/TypeParsing/ParsingUtils/getPrimaryFieldForTypeInfo.d.ts +18 -0
  137. package/common/TypeParsing/ParsingUtils/getTypeInfo.d.ts +9 -0
  138. package/{src/common → common}/TypeParsing/ParsingUtils/getTypeInfoField.d.ts +6 -0
  139. package/common/TypeParsing/ParsingUtils/getTypeInfoFromAliasType.d.ts +11 -0
  140. package/common/TypeParsing/ParsingUtils/getTypeInfoFromFieldFilter.d.ts +12 -0
  141. package/common/TypeParsing/ParsingUtils/getTypeInfoFromTypeAlias.d.ts +11 -0
  142. package/common/TypeParsing/ParsingUtils/getTypeKeyword.d.ts +9 -0
  143. package/common/TypeParsing/ParsingUtils/getUnionOrIntersectionTypeInfo.d.ts +11 -0
  144. package/common/TypeParsing/ParsingUtils/getUnionOrLiteralStringValues.d.ts +8 -0
  145. package/{src/common → common}/TypeParsing/TypeInfo.d.ts +61 -1
  146. package/{src/common → common}/TypeParsing/Utils.d.ts +26 -0
  147. package/{src/common → common}/TypeParsing/Validation.d.ts +105 -0
  148. package/common/TypeParsing/index.d.ts +8 -0
  149. package/common/index.d.ts +50 -0
  150. package/common/index.js +413 -0
  151. package/{src/iac → iac}/SimpleCFT.d.ts +46 -2
  152. package/iac/index.d.ts +40 -0
  153. package/iac/index.js +258 -0
  154. package/iac/packs/auth/user-management.d.ts +80 -0
  155. package/iac/packs/auth.d.ts +86 -0
  156. package/iac/packs/build/utils.d.ts +289 -0
  157. package/iac/packs/build.d.ts +92 -0
  158. package/iac/packs/cdn.d.ts +33 -0
  159. package/iac/packs/cloud-function.d.ts +67 -0
  160. package/{src/iac → iac}/packs/database.d.ts +4 -1
  161. package/{src/iac → iac}/packs/dns.d.ts +22 -1
  162. package/iac/packs/file-storage.d.ts +46 -0
  163. package/iac/packs/gateway.d.ts +79 -0
  164. package/iac/packs/index.d.ts +60 -0
  165. package/iac/packs/index.js +1622 -0
  166. package/iac/packs/repo.d.ts +28 -0
  167. package/iac/packs/ssl-certificate.d.ts +28 -0
  168. package/{src/iac → iac}/types/Constants.d.ts +15 -0
  169. package/iac/types/Renderers.d.ts +96 -0
  170. package/iac/types/Types.d.ts +131 -0
  171. package/iac/types/Utils.d.ts +9 -0
  172. package/{src/iac → iac}/utils/index.d.ts +56 -5
  173. package/iac/utils/patch-utils.d.ts +66 -0
  174. package/native/forms/createNativeFormRenderer.d.ts +21 -0
  175. package/native/forms/index.d.ts +8 -0
  176. package/native/forms/primitives/index.d.ts +48 -0
  177. package/native/forms/suite.d.ts +15 -0
  178. package/native/index.d.ts +15 -0
  179. package/native/index.js +1323 -0
  180. package/native/utils/EasyLayout.d.ts +88 -0
  181. package/native/utils/History.d.ts +113 -0
  182. package/native/utils/NativeRoute.d.ts +44 -0
  183. package/native/utils/Route.d.ts +50 -0
  184. package/native/utils/index.d.ts +11 -0
  185. package/package.json +87 -42
  186. package/web/forms/UI.d.ts +67 -0
  187. package/web/forms/createWebFormRenderer.d.ts +21 -0
  188. package/web/forms/index.d.ts +9 -0
  189. package/web/forms/primitives/index.d.ts +21 -0
  190. package/web/forms/suite.d.ts +15 -0
  191. package/web/index.d.ts +15 -0
  192. package/web/index.js +1297 -0
  193. package/web/utils/EasyLayout.d.ts +47 -0
  194. package/web/utils/Route.d.ts +20 -0
  195. package/web/utils/index.d.ts +7 -0
  196. package/src/api/DataAccessControl.d.ts +0 -85
  197. package/src/api/DataAccessControl.js +0 -159
  198. package/src/api/ORM/DACUtils.d.ts +0 -60
  199. package/src/api/ORM/DACUtils.js +0 -197
  200. package/src/api/ORM/ListItemUtils.d.ts +0 -7
  201. package/src/api/ORM/ListItemUtils.js +0 -22
  202. package/src/api/ORM/ORMRouteMap.d.ts +0 -19
  203. package/src/api/ORM/ORMRouteMap.js +0 -82
  204. package/src/api/ORM/TypeInfoORMService.d.ts +0 -103
  205. package/src/api/ORM/TypeInfoORMService.js +0 -581
  206. package/src/api/ORM/drivers/DynamoDBDataItemDBDriver/ConfigTypes.d.ts +0 -63
  207. package/src/api/ORM/drivers/DynamoDBDataItemDBDriver/ConfigTypes.js +0 -2
  208. package/src/api/ORM/drivers/DynamoDBDataItemDBDriver.d.ts +0 -36
  209. package/src/api/ORM/drivers/DynamoDBDataItemDBDriver.js +0 -282
  210. package/src/api/ORM/drivers/S3FileItemDBDriver/ConfigTypes.d.ts +0 -90
  211. package/src/api/ORM/drivers/S3FileItemDBDriver/ConfigTypes.js +0 -2
  212. package/src/api/ORM/drivers/S3FileItemDBDriver/S3FileDriver.d.ts +0 -45
  213. package/src/api/ORM/drivers/S3FileItemDBDriver/S3FileDriver.js +0 -127
  214. package/src/api/ORM/drivers/S3FileItemDBDriver.js +0 -182
  215. package/src/api/ORM/drivers/common/SupportedTypeInfoORMDBDrivers.d.ts +0 -12
  216. package/src/api/ORM/drivers/common/SupportedTypeInfoORMDBDrivers.js +0 -20
  217. package/src/api/ORM/drivers/common/Types.js +0 -14
  218. package/src/api/ORM/drivers/common/index.js +0 -18
  219. package/src/api/ORM/drivers/index.d.ts +0 -3
  220. package/src/api/ORM/drivers/index.js +0 -19
  221. package/src/api/ORM/index.d.ts +0 -4
  222. package/src/api/ORM/index.js +0 -43
  223. package/src/api/Router/AWS.d.ts +0 -26
  224. package/src/api/Router/AWS.js +0 -76
  225. package/src/api/Router/Auth.d.ts +0 -2
  226. package/src/api/Router/Auth.js +0 -9
  227. package/src/api/Router/CORS.d.ts +0 -6
  228. package/src/api/Router/CORS.js +0 -27
  229. package/src/api/Router/Types.js +0 -2
  230. package/src/api/Router/index.d.ts +0 -18
  231. package/src/api/Router/index.js +0 -145
  232. package/src/api/index.d.ts +0 -3
  233. package/src/api/index.js +0 -39
  234. package/src/app/index.d.ts +0 -1
  235. package/src/app/index.js +0 -37
  236. package/src/app/utils/ApplicationState.js +0 -86
  237. package/src/app/utils/ApplicationStateLoader.js +0 -57
  238. package/src/app/utils/Controller.d.ts +0 -4
  239. package/src/app/utils/Controller.js +0 -47
  240. package/src/app/utils/Debug.d.ts +0 -4
  241. package/src/app/utils/Debug.js +0 -30
  242. package/src/app/utils/EasyLayout.d.ts +0 -49
  243. package/src/app/utils/EasyLayout.js +0 -122
  244. package/src/app/utils/Route.d.ts +0 -28
  245. package/src/app/utils/Route.js +0 -102
  246. package/src/app/utils/Service.d.ts +0 -12
  247. package/src/app/utils/Service.js +0 -34
  248. package/src/app/utils/TypeInfoORMAPIUtils.d.ts +0 -20
  249. package/src/app/utils/TypeInfoORMAPIUtils.js +0 -62
  250. package/src/app/utils/TypeInfoORMClient.d.ts +0 -24
  251. package/src/app/utils/TypeInfoORMClient.js +0 -69
  252. package/src/app/utils/index.d.ts +0 -8
  253. package/src/app/utils/index.js +0 -24
  254. package/src/common/CommandLine/collectRequiredEnvironmentVariables.d.ts +0 -1
  255. package/src/common/CommandLine/collectRequiredEnvironmentVariables.js +0 -16
  256. package/src/common/HelperTypes.d.ts +0 -3
  257. package/src/common/HelperTypes.js +0 -2
  258. package/src/common/IdGeneration/getSimpleId.d.ts +0 -4
  259. package/src/common/IdGeneration/getSimpleId.js +0 -16
  260. package/src/common/IdGeneration/index.js +0 -17
  261. package/src/common/ItemRelationshipInfoTypes.js +0 -20
  262. package/src/common/ItemRelationships/ItemRelationshipValidation.d.ts +0 -10
  263. package/src/common/ItemRelationships/ItemRelationshipValidation.js +0 -43
  264. package/src/common/ItemRelationships/index.js +0 -17
  265. package/src/common/Logging/Utils.d.ts +0 -10
  266. package/src/common/Logging/Utils.js +0 -33
  267. package/src/common/Logging/index.js +0 -17
  268. package/src/common/Routing.d.ts +0 -25
  269. package/src/common/Routing.js +0 -102
  270. package/src/common/SearchTypes.d.ts +0 -98
  271. package/src/common/SearchTypes.js +0 -39
  272. package/src/common/SearchUtils.d.ts +0 -22
  273. package/src/common/SearchUtils.js +0 -134
  274. package/src/common/SearchValidation.js +0 -90
  275. package/src/common/Storyboarding/Types.d.ts +0 -25
  276. package/src/common/Storyboarding/Types.js +0 -2
  277. package/src/common/StringTransformers.js +0 -36
  278. package/src/common/Testing/CLI.d.ts +0 -2
  279. package/src/common/Testing/CLI.js +0 -56
  280. package/src/common/Testing/Types.js +0 -19
  281. package/src/common/Testing/Utils.js +0 -334
  282. package/src/common/Testing/index.d.ts +0 -2
  283. package/src/common/Testing/index.js +0 -18
  284. package/src/common/TypeInfoDataItemUtils.d.ts +0 -10
  285. package/src/common/TypeInfoDataItemUtils.js +0 -55
  286. package/src/common/TypeInfoORM/Types.d.ts +0 -76
  287. package/src/common/TypeInfoORM/Types.js +0 -55
  288. package/src/common/TypeInfoORM/index.js +0 -17
  289. package/src/common/TypeParsing/Constants.d.ts +0 -1
  290. package/src/common/TypeParsing/Constants.js +0 -4
  291. package/src/common/TypeParsing/ParsingUtils/Constants.js +0 -8
  292. package/src/common/TypeParsing/ParsingUtils/checkType.js +0 -46
  293. package/src/common/TypeParsing/ParsingUtils/checkUnionType.js +0 -15
  294. package/src/common/TypeParsing/ParsingUtils/extractCommentTags.d.ts +0 -2
  295. package/src/common/TypeParsing/ParsingUtils/extractCommentTags.js +0 -105
  296. package/src/common/TypeParsing/ParsingUtils/extractLiteralValues.d.ts +0 -6
  297. package/src/common/TypeParsing/ParsingUtils/extractLiteralValues.js +0 -42
  298. package/src/common/TypeParsing/ParsingUtils/extractTypeDetails.d.ts +0 -8
  299. package/src/common/TypeParsing/ParsingUtils/extractTypeDetails.js +0 -14
  300. package/src/common/TypeParsing/ParsingUtils/getPrimaryFieldForTypeInfo.d.ts +0 -5
  301. package/src/common/TypeParsing/ParsingUtils/getPrimaryFieldForTypeInfo.js +0 -27
  302. package/src/common/TypeParsing/ParsingUtils/getTypeInfo.d.ts +0 -3
  303. package/src/common/TypeParsing/ParsingUtils/getTypeInfo.js +0 -27
  304. package/src/common/TypeParsing/ParsingUtils/getTypeInfoField.js +0 -44
  305. package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromAliasType.d.ts +0 -4
  306. package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromAliasType.js +0 -28
  307. package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromFieldFilter.d.ts +0 -4
  308. package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromFieldFilter.js +0 -105
  309. package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromTypeAlias.d.ts +0 -4
  310. package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromTypeAlias.js +0 -20
  311. package/src/common/TypeParsing/ParsingUtils/getTypeKeyword.d.ts +0 -3
  312. package/src/common/TypeParsing/ParsingUtils/getTypeKeyword.js +0 -17
  313. package/src/common/TypeParsing/ParsingUtils/getUnionOrIntersectionTypeInfo.d.ts +0 -4
  314. package/src/common/TypeParsing/ParsingUtils/getUnionOrIntersectionTypeInfo.js +0 -49
  315. package/src/common/TypeParsing/ParsingUtils/getUnionOrLiteralStringValues.d.ts +0 -2
  316. package/src/common/TypeParsing/ParsingUtils/getUnionOrLiteralStringValues.js +0 -24
  317. package/src/common/TypeParsing/TypeInfo.js +0 -13
  318. package/src/common/TypeParsing/TypeMapping.js +0 -32
  319. package/src/common/TypeParsing/TypeParsing.d.ts +0 -5
  320. package/src/common/TypeParsing/TypeParsing.js +0 -39
  321. package/src/common/TypeParsing/Utils.js +0 -94
  322. package/src/common/TypeParsing/Validation.js +0 -340
  323. package/src/common/TypeParsing/index.d.ts +0 -5
  324. package/src/common/TypeParsing/index.js +0 -44
  325. package/src/common/index.d.ts +0 -11
  326. package/src/common/index.js +0 -47
  327. package/src/iac/SimpleCFT.js +0 -82
  328. package/src/iac/index.d.ts +0 -9
  329. package/src/iac/index.js +0 -48
  330. package/src/iac/packs/auth/user-management.d.ts +0 -14
  331. package/src/iac/packs/auth/user-management.js +0 -302
  332. package/src/iac/packs/auth.d.ts +0 -19
  333. package/src/iac/packs/auth.js +0 -47
  334. package/src/iac/packs/build/utils.d.ts +0 -100
  335. package/src/iac/packs/build/utils.js +0 -23
  336. package/src/iac/packs/build.d.ts +0 -29
  337. package/src/iac/packs/build.js +0 -217
  338. package/src/iac/packs/cdn.d.ts +0 -12
  339. package/src/iac/packs/cdn.js +0 -113
  340. package/src/iac/packs/cloud-function.d.ts +0 -17
  341. package/src/iac/packs/cloud-function.js +0 -69
  342. package/src/iac/packs/database.js +0 -27
  343. package/src/iac/packs/dns.js +0 -26
  344. package/src/iac/packs/file-storage.d.ts +0 -14
  345. package/src/iac/packs/file-storage.js +0 -71
  346. package/src/iac/packs/gateway.d.ts +0 -27
  347. package/src/iac/packs/gateway.js +0 -342
  348. package/src/iac/packs/index.d.ts +0 -11
  349. package/src/iac/packs/index.js +0 -27
  350. package/src/iac/packs/repo.d.ts +0 -10
  351. package/src/iac/packs/repo.js +0 -34
  352. package/src/iac/packs/ssl-certificate.d.ts +0 -10
  353. package/src/iac/packs/ssl-certificate.js +0 -36
  354. package/src/iac/types/Constants.js +0 -20
  355. package/src/iac/types/IaCTypes.js +0 -14
  356. package/src/iac/types/Renderers.d.ts +0 -12
  357. package/src/iac/types/Renderers.js +0 -112
  358. package/src/iac/types/Types.d.ts +0 -37
  359. package/src/iac/types/Types.js +0 -2
  360. package/src/iac/types/Utils.d.ts +0 -2
  361. package/src/iac/types/Utils.js +0 -60
  362. package/src/iac/types/generate.js +0 -31
  363. package/src/iac/utils/index.js +0 -105
  364. package/src/iac/utils/patch-utils.d.ts +0 -15
  365. package/src/iac/utils/patch-utils.js +0 -62
  366. package/src/index.d.ts +0 -178
  367. package/src/index.js +0 -214
  368. /package/{src/api → api}/ORM/drivers/common/index.d.ts +0 -0
  369. /package/{src/common → common}/IdGeneration/index.d.ts +0 -0
  370. /package/{src/common → common}/ItemRelationships/index.d.ts +0 -0
  371. /package/{src/common → common}/Logging/index.d.ts +0 -0
  372. /package/{src/common → common}/TypeInfoORM/index.d.ts +0 -0
  373. /package/{src/iac → iac}/types/CloudFormationResourceSpecification.d.ts +0 -0
  374. /package/{src/iac → iac}/types/IaCTypes.d.ts +0 -0
  375. /package/{src/iac → iac}/types/generate.d.ts +0 -0
@@ -0,0 +1,413 @@
1
+ // src/common/CommandLine/collectRequiredEnvironmentVariables.ts
2
+ var collectRequiredEnvironmentVariables = (varNames) => {
3
+ const result = {};
4
+ const missingEnvVars = [];
5
+ for (const vN of varNames) {
6
+ const value = process.env[vN];
7
+ if (!value) {
8
+ missingEnvVars.push(vN);
9
+ } else {
10
+ result[vN] = value;
11
+ }
12
+ }
13
+ if (missingEnvVars.length > 0) {
14
+ throw new Error(
15
+ `
16
+ \u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510
17
+ \u2502 \u26A0 ENVIRONMENT CHECK FAILED \u2502
18
+ \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518
19
+
20
+ Missing Required Environment Variables:
21
+
22
+ ${missingEnvVars.map((vN) => `- ${vN}`).join(`
23
+ `)}
24
+ `
25
+ );
26
+ }
27
+ return result;
28
+ };
29
+
30
+ // src/common/TypeParsing/TypeInfo.ts
31
+ var TypeOperation = /* @__PURE__ */ ((TypeOperation2) => {
32
+ TypeOperation2["CREATE"] = "CREATE";
33
+ TypeOperation2["READ"] = "READ";
34
+ TypeOperation2["UPDATE"] = "UPDATE";
35
+ TypeOperation2["DELETE"] = "DELETE";
36
+ return TypeOperation2;
37
+ })(TypeOperation || {});
38
+
39
+ // src/common/TypeInfoORM/Types.ts
40
+ var TypeInfoORMServiceError = /* @__PURE__ */ ((TypeInfoORMServiceError2) => {
41
+ TypeInfoORMServiceError2["NO_DRIVERS_SUPPLIED"] = "NO_DRIVERS_SUPPLIED";
42
+ TypeInfoORMServiceError2["NO_RELATIONSHIP_DRIVERS_SUPPLIED"] = "NO_RELATIONSHIP_DRIVERS_SUPPLIED";
43
+ TypeInfoORMServiceError2["NO_PRIMARY_FIELD_VALUE_SUPPLIED"] = "NO_PRIMARY_FIELD_VALUE_SUPPLIED";
44
+ TypeInfoORMServiceError2["INVALID_DRIVER"] = "INVALID_DRIVER";
45
+ TypeInfoORMServiceError2["INVALID_RELATIONSHIP_DRIVER"] = "INVALID_RELATIONSHIP_DRIVER";
46
+ TypeInfoORMServiceError2["INVALID_TYPE_INFO"] = "INVALID_TYPE_INFO";
47
+ TypeInfoORMServiceError2["TYPE_INFO_MISSING_PRIMARY_FIELD"] = "TYPE_INFO_MISSING_PRIMARY_FIELD";
48
+ TypeInfoORMServiceError2["INVALID_RELATIONSHIP"] = "INVALID_RELATIONSHIP";
49
+ TypeInfoORMServiceError2["INVALID_OPERATION"] = "INVALID_OPERATION";
50
+ TypeInfoORMServiceError2["MISSING_ACCESSING_ROLE"] = "MISSING_ACCESSING_ROLE";
51
+ TypeInfoORMServiceError2["INDEXING_UNSUPPORTED_CRITERIA"] = "INDEXING_UNSUPPORTED_CRITERIA";
52
+ TypeInfoORMServiceError2["INDEXING_UNSUPPORTED_COMBINATION"] = "INDEXING_UNSUPPORTED_COMBINATION";
53
+ TypeInfoORMServiceError2["INDEXING_MISSING_INDEX_FIELD"] = "INDEXING_MISSING_INDEX_FIELD";
54
+ TypeInfoORMServiceError2["INDEXING_MISSING_BACKEND"] = "INDEXING_MISSING_BACKEND";
55
+ TypeInfoORMServiceError2["INDEXING_REQUIRES_CRITERIA"] = "INDEXING_REQUIRES_CRITERIA";
56
+ return TypeInfoORMServiceError2;
57
+ })(TypeInfoORMServiceError || {});
58
+
59
+ // src/common/Routing.ts
60
+ var PATH_DELIMITER = "/";
61
+ var getPathString = (parts = [], delimiter = PATH_DELIMITER, filterEmptyInput = false, useJson = true, uriEncodeParts = false) => parts.filter(filterEmptyInput ? (p) => p ?? false : () => true).map(useJson ? (p) => JSON.stringify(p) : (x) => x).map(uriEncodeParts ? encodeURIComponent : (x) => x).join(delimiter);
62
+
63
+ // src/common/TypeParsing/Validation.ts
64
+ var RelationshipValidationType = /* @__PURE__ */ ((RelationshipValidationType2) => {
65
+ RelationshipValidationType2["INCLUDE"] = "INCLUDE";
66
+ RelationshipValidationType2["EXCLUDE"] = "EXCLUDE";
67
+ RelationshipValidationType2["STRICT_EXCLUDE"] = "STRICT_EXCLUDE";
68
+ return RelationshipValidationType2;
69
+ })(RelationshipValidationType || {});
70
+ var INVALID_CUSTOM_TYPE = "INVALID_CUSTOM_TYPE";
71
+ var PRIMITIVE_ERROR_MESSAGE_CONSTANTS = {
72
+ string: "NOT_A_STRING",
73
+ number: "NOT_A_NUMBER",
74
+ boolean: "NOT_A_BOOLEAN"
75
+ };
76
+ var ERROR_MESSAGE_CONSTANTS = {
77
+ MISSING: "MISSING",
78
+ INVALID_OPTION: "INVALID_OPTION",
79
+ INVALID_FIELD: "INVALID_FIELD",
80
+ RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED: "RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED",
81
+ INVALID_TYPE: "INVALID_TYPE",
82
+ NO_UNION_TYPE_MATCHED: "NO_UNION_TYPE_MATCHED",
83
+ TYPE_DOES_NOT_EXIST: "TYPE_DOES_NOT_EXIST",
84
+ INVALID_PATTERN: "INVALID_PATTERN",
85
+ VALUE_DOES_NOT_MATCH_PATTERN: "VALUE_DOES_NOT_MATCH_PATTERN"
86
+ };
87
+ var DENIED_TYPE_OPERATIONS = {
88
+ CREATE: "DENIED_TYPE_OPERATION_CREATE",
89
+ READ: "DENIED_TYPE_OPERATION_READ",
90
+ UPDATE: "DENIED_TYPE_OPERATION_UPDATE",
91
+ DELETE: "DENIED_TYPE_OPERATION_DELETE"
92
+ };
93
+ var validateValueMatchesPattern = (typeName, value, pattern) => {
94
+ const results = {
95
+ typeName,
96
+ valid: true,
97
+ error: "",
98
+ errorMap: {}
99
+ };
100
+ const valueSupplied = typeof value !== "undefined";
101
+ const patternSupplied = typeof pattern === "string" && pattern.trim() !== "";
102
+ if (!valueSupplied || !patternSupplied) {
103
+ try {
104
+ const regex = new RegExp(pattern);
105
+ const testResult = typeof value === "string" && regex.test(value);
106
+ if (!testResult) {
107
+ results.valid = false;
108
+ results.error = ERROR_MESSAGE_CONSTANTS.VALUE_DOES_NOT_MATCH_PATTERN;
109
+ }
110
+ } catch (e) {
111
+ results.valid = false;
112
+ results.error = ERROR_MESSAGE_CONSTANTS.INVALID_PATTERN;
113
+ }
114
+ }
115
+ return results;
116
+ };
117
+ var getValidityValue = (existing, pending) => !existing ? false : pending;
118
+ var TYPE_KEYWORD_VALIDATORS = {
119
+ string: (value) => typeof value === "string",
120
+ number: (value) => typeof value === "number",
121
+ boolean: (value) => typeof value === "boolean"
122
+ };
123
+ var hasValue = (value) => value ?? false;
124
+ var validateKeywordType = (value, type) => {
125
+ const validator = TYPE_KEYWORD_VALIDATORS[type];
126
+ let valid = true;
127
+ if (validator) {
128
+ valid = validator(value);
129
+ }
130
+ return valid;
131
+ };
132
+ var validateCustomType = (value, customType, customValidators) => {
133
+ let valid = true;
134
+ if (customValidators && customType) {
135
+ const validator = customValidators[customType];
136
+ if (validator) {
137
+ try {
138
+ valid = validator(value);
139
+ } catch (e) {
140
+ valid = false;
141
+ }
142
+ }
143
+ }
144
+ return valid;
145
+ };
146
+ var validateTypeInfoFieldValue = (value, typeInfoField, typeInfoMap, ignoreArray = false, strict = false, customValidators, typeOperation, relationshipValidationType = "STRICT_EXCLUDE" /* STRICT_EXCLUDE */, itemIsPartial) => {
147
+ const {
148
+ type,
149
+ typeReference,
150
+ array,
151
+ optional,
152
+ possibleValues,
153
+ tags: { customType, constraints: { pattern = void 0 } = {} } = {}
154
+ } = typeInfoField;
155
+ const results = {
156
+ typeName: typeReference ?? type,
157
+ valid: true,
158
+ error: "",
159
+ errorMap: {}
160
+ };
161
+ const requiredValueAllowed = !typeReference || relationshipValidationType === "INCLUDE" /* INCLUDE */;
162
+ const valueIsUndefined = typeof value === "undefined";
163
+ const valueIsNull = value === null;
164
+ const canSkipValidation = itemIsPartial && (valueIsUndefined || valueIsNull) || optional && valueIsUndefined;
165
+ if (canSkipValidation) {
166
+ results.valid = true;
167
+ } else if (requiredValueAllowed && !itemIsPartial && !optional && !hasValue(value)) {
168
+ results.valid = false;
169
+ results.error = ERROR_MESSAGE_CONSTANTS.MISSING;
170
+ } else if (array && !ignoreArray) {
171
+ const {
172
+ valid: validArray,
173
+ error: arrayError,
174
+ errorMap: arrayErrorMap
175
+ } = validateArrayOfTypeInfoFieldValues(
176
+ value,
177
+ typeInfoField,
178
+ typeInfoMap,
179
+ strict,
180
+ customValidators,
181
+ typeOperation,
182
+ relationshipValidationType,
183
+ itemIsPartial
184
+ );
185
+ results.valid = getValidityValue(results.valid, validArray);
186
+ results.error = arrayError;
187
+ results.errorMap = arrayErrorMap;
188
+ } else {
189
+ if (typeReference) {
190
+ if (relationshipValidationType === "INCLUDE" /* INCLUDE */) {
191
+ const {
192
+ valid: validTypeInfo,
193
+ error: typeInfoError,
194
+ errorMap: typeInfoErrorMap
195
+ } = validateTypeInfoValue(
196
+ value,
197
+ typeReference,
198
+ typeInfoMap,
199
+ strict,
200
+ customValidators,
201
+ typeOperation,
202
+ relationshipValidationType,
203
+ itemIsPartial
204
+ );
205
+ results.valid = getValidityValue(results.valid, validTypeInfo);
206
+ results.error = typeInfoError;
207
+ results.errorMap = typeInfoErrorMap;
208
+ } else if (relationshipValidationType === "STRICT_EXCLUDE" /* STRICT_EXCLUDE */) {
209
+ const valueSupplied = typeof value !== "undefined";
210
+ if (valueSupplied) {
211
+ results.valid = false;
212
+ results.error = ERROR_MESSAGE_CONSTANTS.RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED;
213
+ }
214
+ } else if (relationshipValidationType === "EXCLUDE" /* EXCLUDE */) {
215
+ results.valid = getValidityValue(results.valid, true);
216
+ }
217
+ } else if (possibleValues && !possibleValues.includes(value)) {
218
+ results.valid = false;
219
+ results.error = ERROR_MESSAGE_CONSTANTS.INVALID_OPTION;
220
+ } else {
221
+ const pendingValid = validateKeywordType(value, type);
222
+ const customValid = validateCustomType(
223
+ value,
224
+ customType,
225
+ customValidators
226
+ );
227
+ results.valid = getValidityValue(results.valid, pendingValid);
228
+ results.valid = getValidityValue(results.valid, customValid);
229
+ if (type === "string" && typeof pattern === "string") {
230
+ const { valid: patternValid, error: patternError } = validateValueMatchesPattern(value, pattern);
231
+ results.valid = getValidityValue(results.valid, patternValid);
232
+ results.error = patternError;
233
+ }
234
+ if (!customValid) {
235
+ results.error = INVALID_CUSTOM_TYPE;
236
+ } else if (!results.valid) {
237
+ results.error = results.error ? results.error : PRIMITIVE_ERROR_MESSAGE_CONSTANTS[type];
238
+ }
239
+ }
240
+ }
241
+ return results;
242
+ };
243
+ var validateArrayOfTypeInfoFieldValues = (values = [], typeInfoField, typeInfoMap, strict = false, customValidators, typeOperation, relationshipValidationType, itemIsPartial) => {
244
+ const { type, typeReference } = typeInfoField;
245
+ const results = {
246
+ typeName: typeReference ?? type,
247
+ valid: true,
248
+ error: "",
249
+ errorMap: {}
250
+ };
251
+ for (let i = 0; i < values.length; i++) {
252
+ const v = values[i];
253
+ const {
254
+ valid: indexValid,
255
+ error: indexError = "",
256
+ errorMap: indexErrorMap
257
+ } = validateTypeInfoFieldValue(
258
+ v,
259
+ typeInfoField,
260
+ typeInfoMap,
261
+ true,
262
+ strict,
263
+ customValidators,
264
+ typeOperation,
265
+ relationshipValidationType,
266
+ itemIsPartial
267
+ );
268
+ results.valid = getValidityValue(results.valid, indexValid);
269
+ results.errorMap[getPathString([i])] = [indexError];
270
+ for (const er in indexErrorMap) {
271
+ results.errorMap[getPathString([i, er])] = indexErrorMap[er];
272
+ }
273
+ }
274
+ return results;
275
+ };
276
+ var validateTypeInfoFieldOperationAllowed = (fieldName, fieldOperation, typeInfoField) => {
277
+ const results = {
278
+ typeName: null,
279
+ valid: true,
280
+ error: "",
281
+ errorMap: {}
282
+ };
283
+ if (fieldOperation && typeInfoField) {
284
+ const {
285
+ type,
286
+ typeReference,
287
+ tags = {}
288
+ } = typeInfoField || {};
289
+ const { deniedOperations: { [fieldOperation]: denied = false } = {} } = tags;
290
+ results.typeName = typeReference ?? type;
291
+ results.valid = !denied;
292
+ if (!results.valid) {
293
+ results.error = DENIED_TYPE_OPERATIONS[fieldOperation];
294
+ results.errorMap[fieldName] = [results.error];
295
+ }
296
+ }
297
+ return results;
298
+ };
299
+ var validateTypeOperationAllowed = (typeName, valueFields, typeOperation, typeInfo) => {
300
+ const results = {
301
+ typeName,
302
+ valid: true,
303
+ error: "",
304
+ errorMap: {}
305
+ };
306
+ const { fields = {}, tags = {} } = typeInfo;
307
+ const { deniedOperations: { [typeOperation]: denied = false } = {} } = tags;
308
+ if (denied) {
309
+ results.valid = false;
310
+ results.error = DENIED_TYPE_OPERATIONS[typeOperation];
311
+ } else {
312
+ for (const vF of valueFields) {
313
+ const vFieldInfo = fields[vF];
314
+ const { valid: vFValid, error: vFError } = validateTypeInfoFieldOperationAllowed(vF, typeOperation, vFieldInfo);
315
+ results.valid = getValidityValue(results.valid, vFValid);
316
+ if (!vFValid) {
317
+ results.errorMap[vF] = [vFError];
318
+ }
319
+ }
320
+ }
321
+ return results;
322
+ };
323
+ var validateTypeInfoValue = (value, typeInfoFullName, typeInfoMap, strict = false, customValidators, typeOperation, relationshipValidationType, itemIsPartial) => {
324
+ const typeInfo = typeInfoMap[typeInfoFullName];
325
+ const results = {
326
+ typeName: typeInfoFullName,
327
+ valid: !!typeInfo,
328
+ error: !!typeInfo ? "" : ERROR_MESSAGE_CONSTANTS.TYPE_DOES_NOT_EXIST,
329
+ errorMap: {}
330
+ };
331
+ if (typeInfo) {
332
+ const { primaryField, fields, unionFieldSets } = typeInfo;
333
+ if (typeOperation) {
334
+ const valueFields = typeof value === "object" ? Object.keys(value ?? {}) : [];
335
+ const {
336
+ valid: operationValid,
337
+ error: operationError,
338
+ errorMap: operationErrorMap
339
+ } = validateTypeOperationAllowed(
340
+ typeInfoFullName,
341
+ valueFields,
342
+ typeOperation,
343
+ typeInfo
344
+ );
345
+ results.valid = getValidityValue(results.valid, operationValid);
346
+ results.error = operationError;
347
+ for (const oE in operationErrorMap) {
348
+ const existingError = results.errorMap[oE] ?? [];
349
+ results.errorMap[oE] = existingError ? [...existingError, ...operationErrorMap[oE]] : operationErrorMap[oE];
350
+ }
351
+ if (!operationValid && operationError) {
352
+ results.error = operationError;
353
+ }
354
+ }
355
+ if (unionFieldSets) {
356
+ const valueFields = Object.keys(value || {});
357
+ let valid = false;
358
+ for (const uFS of unionFieldSets) {
359
+ valid = valueFields.every((vF) => uFS.includes(vF));
360
+ if (valid) {
361
+ break;
362
+ }
363
+ }
364
+ if (!valid) {
365
+ results.valid = false;
366
+ results.error = ERROR_MESSAGE_CONSTANTS.NO_UNION_TYPE_MATCHED;
367
+ }
368
+ } else if (strict) {
369
+ const knownFields = Object.keys(fields || {});
370
+ const valueFields = Object.keys(value || {});
371
+ for (const vF of valueFields) {
372
+ if (!knownFields.includes(vF)) {
373
+ results.valid = false;
374
+ results.errorMap[vF] = [ERROR_MESSAGE_CONSTANTS.INVALID_FIELD];
375
+ }
376
+ }
377
+ }
378
+ if (fields) {
379
+ for (const key in fields) {
380
+ if (typeOperation !== "CREATE" /* CREATE */ || typeof primaryField !== "string" || key !== primaryField) {
381
+ const typeInfoField = fields[key];
382
+ const fieldValue = value[key];
383
+ const {
384
+ valid: fieldValid,
385
+ error: fieldError,
386
+ errorMap: fieldErrorMap
387
+ } = validateTypeInfoFieldValue(
388
+ fieldValue,
389
+ typeInfoField,
390
+ typeInfoMap,
391
+ false,
392
+ strict,
393
+ customValidators,
394
+ typeOperation,
395
+ relationshipValidationType,
396
+ itemIsPartial
397
+ );
398
+ results.valid = getValidityValue(results.valid, fieldValid);
399
+ results.errorMap[key] = [fieldError];
400
+ for (const fE in fieldErrorMap) {
401
+ results.errorMap[getPathString([key, fE])] = fieldErrorMap[fE];
402
+ }
403
+ }
404
+ }
405
+ }
406
+ if (!results.valid && !results.error) {
407
+ results.error = ERROR_MESSAGE_CONSTANTS.INVALID_TYPE;
408
+ }
409
+ }
410
+ return results;
411
+ };
412
+
413
+ export { DENIED_TYPE_OPERATIONS, ERROR_MESSAGE_CONSTANTS, INVALID_CUSTOM_TYPE, PRIMITIVE_ERROR_MESSAGE_CONSTANTS, RelationshipValidationType, TYPE_KEYWORD_VALIDATORS, TypeInfoORMServiceError, TypeOperation, collectRequiredEnvironmentVariables, getValidityValue, hasValue, validateArrayOfTypeInfoFieldValues, validateCustomType, validateKeywordType, validateTypeInfoFieldOperationAllowed, validateTypeInfoFieldValue, validateTypeInfoValue, validateTypeOperationAllowed, validateValueMatchesPattern };
@@ -1,48 +1,92 @@
1
+ /**
2
+ * @packageDocumentation
3
+ *
4
+ * Fluent builder for CloudFormation templates. Use {@link SimpleCFT} to apply
5
+ * packs, patches, and parameters, then read the resulting `template` or render
6
+ * it as JSON/YAML.
7
+ */
1
8
  import { CloudFormationTemplate } from "./types/IaCTypes";
2
9
  import { ParameterGroup, ParameterInfo, ResourcePackApplier } from "./utils";
3
10
  /**
4
11
  * A function used to apply a modification to a SimpleCFT instance.
12
+ *
13
+ * @param simpleCFT - SimpleCFT instance to modify.
5
14
  * */
6
15
  export type SimpleCFTModification = (simpleCFT: SimpleCFT) => void;
7
16
  /**
8
17
  * The basis for your stack template.
9
18
  * Apply packs, patches, parameters and parameter groups.
10
19
  * Access the `template` property for the resulting CloudFormation template.
11
- * */
20
+ *
21
+ * Example:
22
+ * ```ts
23
+ * import { SimpleCFT } from "./SimpleCFT";
24
+ *
25
+ * const template = new SimpleCFT()
26
+ * .addParameter({
27
+ * Group: "App",
28
+ * ParameterId: "AppName",
29
+ * Label: "App Name",
30
+ * Parameter: { Type: "String", Default: "voltra" },
31
+ * })
32
+ * .patch({ Description: "My stack" });
33
+ *
34
+ * console.log(template.toString());
35
+ * ```
36
+ */
12
37
  export declare class SimpleCFT {
13
38
  template: CloudFormationTemplate;
39
+ /**
40
+ * Create a SimpleCFT template wrapper.
41
+ *
42
+ * @param template - Initial CloudFormation template.
43
+ */
14
44
  constructor(template?: CloudFormationTemplate);
15
45
  /**
16
46
  * Apply a pack with configuration to the stack template.
17
- * @see {@link IaC} for an example.
47
+ * @see `@resistdesign/voltra/iac` and `@resistdesign/voltra/iac/packs` for examples.
18
48
  * */
19
49
  applyPack: <ParamsType>(pack: ResourcePackApplier<ParamsType>, params: ParamsType) => this;
20
50
  /**
21
51
  * Apply a patch to the stack template.
52
+ *
53
+ * @param patch - Template patch to merge.
22
54
  * */
23
55
  patch: (patch: Partial<CloudFormationTemplate>) => this;
24
56
  /**
25
57
  * Add a stack parameter including its descriptive info and an optional parameter group.
58
+ *
59
+ * @param parameter - Parameter definition and metadata.
26
60
  * */
27
61
  addParameter: (parameter: ParameterInfo) => this;
28
62
  /**
29
63
  * Add a group of stack parameters including their descriptive info and an optional parameter group.
64
+ *
65
+ * @param group - Parameter group definition.
30
66
  * */
31
67
  addParameterGroup: ({ Label: Group, Parameters }: ParameterGroup) => this;
32
68
  /**
33
69
  * Use a modification to dynamically apply various changes at once.
70
+ *
71
+ * @param modification - Modification callback to apply.
34
72
  * */
35
73
  modify: (modification: SimpleCFTModification) => this;
36
74
  /**
37
75
  * Convert the stack template to a string.
76
+ *
77
+ * @returns JSON string representation of the template.
38
78
  * */
39
79
  toString: () => string;
40
80
  /**
41
81
  * Convert the stack template to a JSON object.
82
+ *
83
+ * @returns Template JSON object.
42
84
  * */
43
85
  toJSON: () => CloudFormationTemplate;
44
86
  /**
45
87
  * Convert the stack template to a YAML string.
88
+ *
89
+ * @returns YAML string representation of the template.
46
90
  * */
47
91
  toYAML: () => string;
48
92
  }
package/iac/index.d.ts ADDED
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @packageDocumentation
3
+ *
4
+ * Infrastructure-as-code entrypoint.
5
+ *
6
+ * Import from the IaC subpath only:
7
+ * ```ts
8
+ * import { SimpleCFT } from "@resistdesign/voltra/iac";
9
+ * import { addDNS } from "@resistdesign/voltra/iac/packs";
10
+ * ```
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * import { SimpleCFT } from "@resistdesign/voltra/iac";
15
+ * import { addDNS } from "@resistdesign/voltra/iac/packs";
16
+ *
17
+ * const cft = new SimpleCFT().applyPack(addDNS, {
18
+ * hostedZoneIdParameterName: "<YOUR_INFO_HERE>",
19
+ * domainNameParameterName: "<YOUR_INFO_HERE>",
20
+ * localUIDevelopmentDomainName: "<YOUR_INFO_HERE>",
21
+ * localUIDevelopmentIPAddress: "<YOUR_INFO_HERE>",
22
+ * });
23
+ *
24
+ * console.log(cft.template);
25
+ * ```
26
+ *
27
+ * Use flat exports for reusable resource packs and template helpers.
28
+ *
29
+ * See also: `@resistdesign/voltra/iac/packs` for direct pack imports.
30
+ */
31
+ /**
32
+ * @category iac
33
+ * @group Core
34
+ */
35
+ export * from "./SimpleCFT";
36
+ /**
37
+ * @category iac
38
+ * @group Utilities
39
+ */
40
+ export * from "./utils";