alchemy 2.0.0-beta.52 → 2.0.0-beta.54

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 (833) hide show
  1. package/bin/exec.js +9 -9
  2. package/bin/exec.js.map +1 -1
  3. package/lib/AWS/ACM/Certificate.d.ts +1 -1
  4. package/lib/AWS/ApiGateway/Account.d.ts +1 -1
  5. package/lib/AWS/ApiGateway/ApiKey.d.ts +2 -2
  6. package/lib/AWS/ApiGateway/ApiKey.d.ts.map +1 -1
  7. package/lib/AWS/ApiGateway/ApiKey.js +3 -3
  8. package/lib/AWS/ApiGateway/ApiKey.js.map +1 -1
  9. package/lib/AWS/ApiGateway/Authorizer.d.ts +1 -1
  10. package/lib/AWS/ApiGateway/BasePathMapping.d.ts +1 -1
  11. package/lib/AWS/ApiGateway/Deployment.d.ts +1 -1
  12. package/lib/AWS/ApiGateway/DomainName.d.ts +1 -1
  13. package/lib/AWS/ApiGateway/GatewayResource.d.ts +1 -1
  14. package/lib/AWS/ApiGateway/GatewayResponse.d.ts +1 -1
  15. package/lib/AWS/ApiGateway/Method.d.ts +1 -1
  16. package/lib/AWS/ApiGateway/RestApi.d.ts +2 -2
  17. package/lib/AWS/ApiGateway/RestApi.d.ts.map +1 -1
  18. package/lib/AWS/ApiGateway/RestApi.js +4 -4
  19. package/lib/AWS/ApiGateway/RestApi.js.map +1 -1
  20. package/lib/AWS/ApiGateway/Stage.d.ts +2 -2
  21. package/lib/AWS/ApiGateway/Stage.d.ts.map +1 -1
  22. package/lib/AWS/ApiGateway/Stage.js +3 -3
  23. package/lib/AWS/ApiGateway/Stage.js.map +1 -1
  24. package/lib/AWS/ApiGateway/UsagePlan.d.ts +2 -2
  25. package/lib/AWS/ApiGateway/UsagePlan.d.ts.map +1 -1
  26. package/lib/AWS/ApiGateway/UsagePlan.js +3 -3
  27. package/lib/AWS/ApiGateway/UsagePlan.js.map +1 -1
  28. package/lib/AWS/ApiGateway/UsagePlanKey.d.ts +1 -1
  29. package/lib/AWS/ApiGateway/VpcLink.d.ts +2 -2
  30. package/lib/AWS/ApiGateway/VpcLink.d.ts.map +1 -1
  31. package/lib/AWS/ApiGateway/VpcLink.js +3 -3
  32. package/lib/AWS/ApiGateway/VpcLink.js.map +1 -1
  33. package/lib/AWS/ApiGateway/common.d.ts +1 -1
  34. package/lib/AWS/Assets.d.ts +21 -12
  35. package/lib/AWS/Assets.d.ts.map +1 -1
  36. package/lib/AWS/Assets.js +95 -70
  37. package/lib/AWS/Assets.js.map +1 -1
  38. package/lib/AWS/AuthProvider.d.ts +12 -6
  39. package/lib/AWS/AuthProvider.d.ts.map +1 -1
  40. package/lib/AWS/AuthProvider.js +120 -75
  41. package/lib/AWS/AuthProvider.js.map +1 -1
  42. package/lib/AWS/AutoScaling/AutoScalingGroup.d.ts +1 -1
  43. package/lib/AWS/AutoScaling/LaunchTemplate.d.ts +1 -2
  44. package/lib/AWS/AutoScaling/LaunchTemplate.d.ts.map +1 -1
  45. package/lib/AWS/AutoScaling/LaunchTemplate.js +21 -27
  46. package/lib/AWS/AutoScaling/LaunchTemplate.js.map +1 -1
  47. package/lib/AWS/AutoScaling/ScalingPolicy.d.ts +1 -1
  48. package/lib/AWS/Bootstrap.d.ts +2 -14
  49. package/lib/AWS/Bootstrap.d.ts.map +1 -1
  50. package/lib/AWS/Bootstrap.js +46 -133
  51. package/lib/AWS/Bootstrap.js.map +1 -1
  52. package/lib/AWS/CloudFront/CachePolicy.d.ts +1 -1
  53. package/lib/AWS/CloudFront/Distribution.d.ts +1 -1
  54. package/lib/AWS/CloudFront/Function.d.ts +1 -1
  55. package/lib/AWS/CloudFront/Invalidation.d.ts +1 -1
  56. package/lib/AWS/CloudFront/KeyGroup.d.ts +1 -1
  57. package/lib/AWS/CloudFront/KeyValueStore.d.ts +1 -1
  58. package/lib/AWS/CloudFront/OriginAccessControl.d.ts +1 -1
  59. package/lib/AWS/CloudFront/OriginRequestPolicy.d.ts +1 -1
  60. package/lib/AWS/CloudFront/PublicKey.d.ts +1 -1
  61. package/lib/AWS/CloudFront/ResponseHeadersPolicy.d.ts +1 -1
  62. package/lib/AWS/CloudFront/common.d.ts +1 -1
  63. package/lib/AWS/CloudWatch/Alarm.d.ts +2 -3
  64. package/lib/AWS/CloudWatch/Alarm.d.ts.map +1 -1
  65. package/lib/AWS/CloudWatch/Alarm.js +3 -6
  66. package/lib/AWS/CloudWatch/Alarm.js.map +1 -1
  67. package/lib/AWS/CloudWatch/AlarmMuteRule.d.ts +2 -3
  68. package/lib/AWS/CloudWatch/AlarmMuteRule.d.ts.map +1 -1
  69. package/lib/AWS/CloudWatch/AlarmMuteRule.js +2 -5
  70. package/lib/AWS/CloudWatch/AlarmMuteRule.js.map +1 -1
  71. package/lib/AWS/CloudWatch/AnomalyDetector.d.ts +1 -1
  72. package/lib/AWS/CloudWatch/CompositeAlarm.d.ts +2 -3
  73. package/lib/AWS/CloudWatch/CompositeAlarm.d.ts.map +1 -1
  74. package/lib/AWS/CloudWatch/CompositeAlarm.js +3 -6
  75. package/lib/AWS/CloudWatch/CompositeAlarm.js.map +1 -1
  76. package/lib/AWS/CloudWatch/Dashboard.d.ts +2 -2
  77. package/lib/AWS/CloudWatch/Dashboard.d.ts.map +1 -1
  78. package/lib/AWS/CloudWatch/Dashboard.js +3 -4
  79. package/lib/AWS/CloudWatch/Dashboard.js.map +1 -1
  80. package/lib/AWS/CloudWatch/DescribeAlarmContributors.d.ts +1 -1
  81. package/lib/AWS/CloudWatch/DescribeAlarmHistory.d.ts +1 -1
  82. package/lib/AWS/CloudWatch/DescribeAlarms.d.ts +1 -1
  83. package/lib/AWS/CloudWatch/DescribeAlarmsForMetric.d.ts +1 -1
  84. package/lib/AWS/CloudWatch/DescribeAnomalyDetectors.d.ts +1 -1
  85. package/lib/AWS/CloudWatch/DescribeInsightRules.d.ts +1 -1
  86. package/lib/AWS/CloudWatch/DisableAlarmActions.d.ts +1 -1
  87. package/lib/AWS/CloudWatch/DisableInsightRules.d.ts +1 -1
  88. package/lib/AWS/CloudWatch/EnableAlarmActions.d.ts +1 -1
  89. package/lib/AWS/CloudWatch/GetAlarmMuteRule.d.ts +1 -1
  90. package/lib/AWS/CloudWatch/GetDashboard.d.ts +1 -1
  91. package/lib/AWS/CloudWatch/GetInsightRuleReport.d.ts +1 -1
  92. package/lib/AWS/CloudWatch/GetMetricData.d.ts +1 -1
  93. package/lib/AWS/CloudWatch/GetMetricStatistics.d.ts +1 -1
  94. package/lib/AWS/CloudWatch/GetMetricStream.d.ts +1 -1
  95. package/lib/AWS/CloudWatch/GetMetricWidgetImage.d.ts +1 -1
  96. package/lib/AWS/CloudWatch/InsightRule.d.ts +2 -3
  97. package/lib/AWS/CloudWatch/InsightRule.d.ts.map +1 -1
  98. package/lib/AWS/CloudWatch/InsightRule.js +4 -7
  99. package/lib/AWS/CloudWatch/InsightRule.js.map +1 -1
  100. package/lib/AWS/CloudWatch/ListAlarmMuteRules.d.ts +1 -1
  101. package/lib/AWS/CloudWatch/ListDashboards.d.ts +1 -1
  102. package/lib/AWS/CloudWatch/ListManagedInsightRules.d.ts +1 -1
  103. package/lib/AWS/CloudWatch/ListMetricStreams.d.ts +1 -1
  104. package/lib/AWS/CloudWatch/ListMetrics.d.ts +1 -1
  105. package/lib/AWS/CloudWatch/ListTagsForResource.d.ts +1 -1
  106. package/lib/AWS/CloudWatch/MetricStream.d.ts +2 -3
  107. package/lib/AWS/CloudWatch/MetricStream.d.ts.map +1 -1
  108. package/lib/AWS/CloudWatch/MetricStream.js +3 -6
  109. package/lib/AWS/CloudWatch/MetricStream.js.map +1 -1
  110. package/lib/AWS/CloudWatch/PutMetricData.d.ts +1 -1
  111. package/lib/AWS/CloudWatch/SetAlarmState.d.ts +1 -1
  112. package/lib/AWS/CloudWatch/common.d.ts +2 -2
  113. package/lib/AWS/Credentials.d.ts.map +1 -1
  114. package/lib/AWS/Credentials.js +4 -1
  115. package/lib/AWS/Credentials.js.map +1 -1
  116. package/lib/AWS/DynamoDB/BatchExecuteStatement.d.ts +1 -1
  117. package/lib/AWS/DynamoDB/BatchGetItem.d.ts +1 -1
  118. package/lib/AWS/DynamoDB/BatchWriteItem.d.ts +1 -1
  119. package/lib/AWS/DynamoDB/DeleteItem.d.ts +1 -1
  120. package/lib/AWS/DynamoDB/DescribeTable.d.ts +1 -1
  121. package/lib/AWS/DynamoDB/DescribeTimeToLive.d.ts +1 -1
  122. package/lib/AWS/DynamoDB/ExecuteStatement.d.ts +1 -1
  123. package/lib/AWS/DynamoDB/ExecuteTransaction.d.ts +1 -1
  124. package/lib/AWS/DynamoDB/GetItem.d.ts +1 -1
  125. package/lib/AWS/DynamoDB/ListTables.d.ts +1 -1
  126. package/lib/AWS/DynamoDB/ListTagsOfResource.d.ts +1 -1
  127. package/lib/AWS/DynamoDB/PutItem.d.ts +1 -1
  128. package/lib/AWS/DynamoDB/Query.d.ts +1 -1
  129. package/lib/AWS/DynamoDB/RestoreTableToPointInTime.d.ts +1 -1
  130. package/lib/AWS/DynamoDB/Scan.d.ts +1 -1
  131. package/lib/AWS/DynamoDB/Table.d.ts +1 -1
  132. package/lib/AWS/DynamoDB/TransactGetItems.d.ts +1 -1
  133. package/lib/AWS/DynamoDB/TransactWriteItems.d.ts +1 -1
  134. package/lib/AWS/DynamoDB/UpdateItem.d.ts +1 -1
  135. package/lib/AWS/DynamoDB/UpdateTimeToLive.d.ts +1 -1
  136. package/lib/AWS/EC2/EIP.d.ts +2 -3
  137. package/lib/AWS/EC2/EIP.d.ts.map +1 -1
  138. package/lib/AWS/EC2/EIP.js +2 -3
  139. package/lib/AWS/EC2/EIP.js.map +1 -1
  140. package/lib/AWS/EC2/EgressOnlyInternetGateway.d.ts +2 -3
  141. package/lib/AWS/EC2/EgressOnlyInternetGateway.d.ts.map +1 -1
  142. package/lib/AWS/EC2/EgressOnlyInternetGateway.js +5 -8
  143. package/lib/AWS/EC2/EgressOnlyInternetGateway.js.map +1 -1
  144. package/lib/AWS/EC2/Image.d.ts +6 -6
  145. package/lib/AWS/EC2/Instance.d.ts +2 -2
  146. package/lib/AWS/EC2/Instance.d.ts.map +1 -1
  147. package/lib/AWS/EC2/Instance.js +30 -36
  148. package/lib/AWS/EC2/Instance.js.map +1 -1
  149. package/lib/AWS/EC2/InternetGateway.d.ts +2 -4
  150. package/lib/AWS/EC2/InternetGateway.d.ts.map +1 -1
  151. package/lib/AWS/EC2/InternetGateway.js +2 -4
  152. package/lib/AWS/EC2/InternetGateway.js.map +1 -1
  153. package/lib/AWS/EC2/NatGateway.d.ts +2 -3
  154. package/lib/AWS/EC2/NatGateway.d.ts.map +1 -1
  155. package/lib/AWS/EC2/NatGateway.js +6 -8
  156. package/lib/AWS/EC2/NatGateway.js.map +1 -1
  157. package/lib/AWS/EC2/Network.d.ts +2 -2
  158. package/lib/AWS/EC2/Network.d.ts.map +1 -1
  159. package/lib/AWS/EC2/Network.js +2 -2
  160. package/lib/AWS/EC2/Network.js.map +1 -1
  161. package/lib/AWS/EC2/NetworkAcl.d.ts +2 -3
  162. package/lib/AWS/EC2/NetworkAcl.d.ts.map +1 -1
  163. package/lib/AWS/EC2/NetworkAcl.js +36 -36
  164. package/lib/AWS/EC2/NetworkAcl.js.map +1 -1
  165. package/lib/AWS/EC2/NetworkAclAssociation.d.ts +1 -1
  166. package/lib/AWS/EC2/NetworkAclEntry.d.ts +1 -1
  167. package/lib/AWS/EC2/Route.d.ts +1 -1
  168. package/lib/AWS/EC2/RouteTable.d.ts +2 -3
  169. package/lib/AWS/EC2/RouteTable.d.ts.map +1 -1
  170. package/lib/AWS/EC2/RouteTable.js +2 -4
  171. package/lib/AWS/EC2/RouteTable.js.map +1 -1
  172. package/lib/AWS/EC2/RouteTableAssociation.d.ts +1 -1
  173. package/lib/AWS/EC2/SecurityGroup.d.ts +2 -3
  174. package/lib/AWS/EC2/SecurityGroup.d.ts.map +1 -1
  175. package/lib/AWS/EC2/SecurityGroup.js +40 -40
  176. package/lib/AWS/EC2/SecurityGroup.js.map +1 -1
  177. package/lib/AWS/EC2/SecurityGroupRule.d.ts +1 -1
  178. package/lib/AWS/EC2/Subnet.d.ts +1 -1
  179. package/lib/AWS/EC2/Vpc.d.ts +2 -3
  180. package/lib/AWS/EC2/Vpc.d.ts.map +1 -1
  181. package/lib/AWS/EC2/Vpc.js +1 -3
  182. package/lib/AWS/EC2/Vpc.js.map +1 -1
  183. package/lib/AWS/EC2/VpcEndpoint.d.ts +1 -2
  184. package/lib/AWS/EC2/VpcEndpoint.d.ts.map +1 -1
  185. package/lib/AWS/EC2/VpcEndpoint.js +44 -43
  186. package/lib/AWS/EC2/VpcEndpoint.js.map +1 -1
  187. package/lib/AWS/EC2/hosted.d.ts +3 -6
  188. package/lib/AWS/EC2/hosted.d.ts.map +1 -1
  189. package/lib/AWS/EC2/hosted.js +17 -18
  190. package/lib/AWS/EC2/hosted.js.map +1 -1
  191. package/lib/AWS/ECR/Repository.d.ts +1 -1
  192. package/lib/AWS/ECS/CapacityProvider.d.ts +1 -2
  193. package/lib/AWS/ECS/CapacityProvider.d.ts.map +1 -1
  194. package/lib/AWS/ECS/CapacityProvider.js +1 -3
  195. package/lib/AWS/ECS/CapacityProvider.js.map +1 -1
  196. package/lib/AWS/ECS/Cluster.d.ts +2 -3
  197. package/lib/AWS/ECS/Cluster.d.ts.map +1 -1
  198. package/lib/AWS/ECS/Cluster.js +1 -3
  199. package/lib/AWS/ECS/Cluster.js.map +1 -1
  200. package/lib/AWS/ECS/DescribeTasks.d.ts +1 -1
  201. package/lib/AWS/ECS/ListTasks.d.ts +1 -1
  202. package/lib/AWS/ECS/RunTask.d.ts +1 -1
  203. package/lib/AWS/ECS/Service.d.ts +1 -1
  204. package/lib/AWS/ECS/StopTask.d.ts +1 -1
  205. package/lib/AWS/ECS/Task.d.ts +2 -2
  206. package/lib/AWS/ECS/Task.d.ts.map +1 -1
  207. package/lib/AWS/ECS/Task.js +2 -2
  208. package/lib/AWS/ECS/Task.js.map +1 -1
  209. package/lib/AWS/EKS/AccessEntry.d.ts +1 -1
  210. package/lib/AWS/EKS/Addon.d.ts +1 -1
  211. package/lib/AWS/EKS/Cluster.d.ts +1 -1
  212. package/lib/AWS/EKS/Cluster.d.ts.map +1 -1
  213. package/lib/AWS/EKS/PodIdentityAssociation.d.ts +1 -1
  214. package/lib/AWS/ELBv2/Listener.d.ts +1 -1
  215. package/lib/AWS/ELBv2/LoadBalancer.d.ts +1 -1
  216. package/lib/AWS/ELBv2/TargetGroup.d.ts +1 -1
  217. package/lib/AWS/Endpoint.d.ts.map +1 -1
  218. package/lib/AWS/Endpoint.js +5 -2
  219. package/lib/AWS/Endpoint.js.map +1 -1
  220. package/lib/AWS/Environment.d.ts +6 -50
  221. package/lib/AWS/Environment.d.ts.map +1 -1
  222. package/lib/AWS/Environment.js +11 -80
  223. package/lib/AWS/Environment.js.map +1 -1
  224. package/lib/AWS/EventBridge/DescribeEventBus.d.ts +1 -1
  225. package/lib/AWS/EventBridge/DescribeRule.d.ts +1 -1
  226. package/lib/AWS/EventBridge/EventBus.d.ts +2 -3
  227. package/lib/AWS/EventBridge/EventBus.d.ts.map +1 -1
  228. package/lib/AWS/EventBridge/EventBus.js +1 -3
  229. package/lib/AWS/EventBridge/EventBus.js.map +1 -1
  230. package/lib/AWS/EventBridge/ListEventBuses.d.ts +1 -1
  231. package/lib/AWS/EventBridge/ListRules.d.ts +2 -3
  232. package/lib/AWS/EventBridge/ListRules.d.ts.map +1 -1
  233. package/lib/AWS/EventBridge/ListRules.js +2 -3
  234. package/lib/AWS/EventBridge/ListRules.js.map +1 -1
  235. package/lib/AWS/EventBridge/ListTargetsByRule.d.ts +1 -1
  236. package/lib/AWS/EventBridge/Permission.d.ts +1 -1
  237. package/lib/AWS/EventBridge/PutEvents.d.ts +2 -3
  238. package/lib/AWS/EventBridge/PutEvents.d.ts.map +1 -1
  239. package/lib/AWS/EventBridge/PutEvents.js +2 -3
  240. package/lib/AWS/EventBridge/PutEvents.js.map +1 -1
  241. package/lib/AWS/EventBridge/Rule.d.ts +2 -3
  242. package/lib/AWS/EventBridge/Rule.d.ts.map +1 -1
  243. package/lib/AWS/EventBridge/Rule.js +2 -3
  244. package/lib/AWS/EventBridge/Rule.js.map +1 -1
  245. package/lib/AWS/EventBridge/TestEventPattern.d.ts +1 -1
  246. package/lib/AWS/IAM/AccessKey.d.ts +1 -1
  247. package/lib/AWS/IAM/AccountAlias.d.ts +1 -1
  248. package/lib/AWS/IAM/AccountPasswordPolicy.d.ts +1 -1
  249. package/lib/AWS/IAM/Group.d.ts +1 -1
  250. package/lib/AWS/IAM/GroupMembership.d.ts +1 -1
  251. package/lib/AWS/IAM/InstanceProfile.d.ts +1 -1
  252. package/lib/AWS/IAM/LoginProfile.d.ts +1 -1
  253. package/lib/AWS/IAM/OpenIDConnectProvider.d.ts +1 -1
  254. package/lib/AWS/IAM/OpenIDConnectProvider.d.ts.map +1 -1
  255. package/lib/AWS/IAM/OpenIDConnectProvider.js +5 -4
  256. package/lib/AWS/IAM/OpenIDConnectProvider.js.map +1 -1
  257. package/lib/AWS/IAM/Policy.d.ts +1 -1
  258. package/lib/AWS/IAM/Policy.d.ts.map +1 -1
  259. package/lib/AWS/IAM/Policy.js +1 -1
  260. package/lib/AWS/IAM/Policy.js.map +1 -1
  261. package/lib/AWS/IAM/Role.d.ts +2 -2
  262. package/lib/AWS/IAM/Role.d.ts.map +1 -1
  263. package/lib/AWS/IAM/Role.js +1 -1
  264. package/lib/AWS/IAM/Role.js.map +1 -1
  265. package/lib/AWS/IAM/SAMLProvider.d.ts +2 -2
  266. package/lib/AWS/IAM/SAMLProvider.d.ts.map +1 -1
  267. package/lib/AWS/IAM/SAMLProvider.js +2 -2
  268. package/lib/AWS/IAM/SAMLProvider.js.map +1 -1
  269. package/lib/AWS/IAM/SSHPublicKey.d.ts +1 -1
  270. package/lib/AWS/IAM/ServerCertificate.d.ts +1 -1
  271. package/lib/AWS/IAM/ServiceSpecificCredential.d.ts +1 -1
  272. package/lib/AWS/IAM/SigningCertificate.d.ts +1 -1
  273. package/lib/AWS/IAM/User.d.ts +1 -1
  274. package/lib/AWS/IAM/VirtualMFADevice.d.ts +1 -1
  275. package/lib/AWS/IdentityCenter/AccountAssignment.d.ts +1 -1
  276. package/lib/AWS/IdentityCenter/Group.d.ts +1 -1
  277. package/lib/AWS/IdentityCenter/Instance.d.ts +1 -1
  278. package/lib/AWS/IdentityCenter/PermissionSet.d.ts +1 -1
  279. package/lib/AWS/IdentityCenter/common.d.ts +4 -4
  280. package/lib/AWS/Kinesis/DescribeAccountSettings.d.ts +1 -1
  281. package/lib/AWS/Kinesis/DescribeLimits.d.ts +1 -1
  282. package/lib/AWS/Kinesis/DescribeStream.d.ts +1 -1
  283. package/lib/AWS/Kinesis/DescribeStreamConsumer.d.ts +1 -1
  284. package/lib/AWS/Kinesis/DescribeStreamSummary.d.ts +1 -1
  285. package/lib/AWS/Kinesis/GetRecords.d.ts +1 -1
  286. package/lib/AWS/Kinesis/GetResourcePolicy.d.ts +1 -1
  287. package/lib/AWS/Kinesis/GetShardIterator.d.ts +1 -1
  288. package/lib/AWS/Kinesis/ListShards.d.ts +1 -1
  289. package/lib/AWS/Kinesis/ListStreamConsumers.d.ts +1 -1
  290. package/lib/AWS/Kinesis/ListStreams.d.ts +1 -1
  291. package/lib/AWS/Kinesis/ListTagsForResource.d.ts +1 -1
  292. package/lib/AWS/Kinesis/PutRecord.d.ts +1 -1
  293. package/lib/AWS/Kinesis/PutRecords.d.ts +1 -1
  294. package/lib/AWS/Kinesis/Stream.d.ts +2 -3
  295. package/lib/AWS/Kinesis/Stream.d.ts.map +1 -1
  296. package/lib/AWS/Kinesis/Stream.js +1 -3
  297. package/lib/AWS/Kinesis/Stream.js.map +1 -1
  298. package/lib/AWS/Kinesis/StreamConsumer.d.ts +1 -1
  299. package/lib/AWS/Kinesis/SubscribeToShard.d.ts +1 -1
  300. package/lib/AWS/Lambda/EventSourceMapping.d.ts +2 -3
  301. package/lib/AWS/Lambda/EventSourceMapping.d.ts.map +1 -1
  302. package/lib/AWS/Lambda/EventSourceMapping.js +1 -3
  303. package/lib/AWS/Lambda/EventSourceMapping.js.map +1 -1
  304. package/lib/AWS/Lambda/Function.d.ts +2 -2
  305. package/lib/AWS/Lambda/Function.d.ts.map +1 -1
  306. package/lib/AWS/Lambda/Function.js +9 -7
  307. package/lib/AWS/Lambda/Function.js.map +1 -1
  308. package/lib/AWS/Lambda/InvokeFunction.d.ts +1 -1
  309. package/lib/AWS/Lambda/Permission.d.ts +2 -2
  310. package/lib/AWS/Lambda/Permission.js +1 -1
  311. package/lib/AWS/Logs/LogGroup.d.ts +2 -3
  312. package/lib/AWS/Logs/LogGroup.d.ts.map +1 -1
  313. package/lib/AWS/Logs/LogGroup.js +1 -3
  314. package/lib/AWS/Logs/LogGroup.js.map +1 -1
  315. package/lib/AWS/Organizations/Account.d.ts +1 -1
  316. package/lib/AWS/Organizations/DelegatedAdministrator.d.ts +1 -1
  317. package/lib/AWS/Organizations/Organization.d.ts +1 -1
  318. package/lib/AWS/Organizations/OrganizationResourcePolicy.d.ts +1 -1
  319. package/lib/AWS/Organizations/OrganizationalUnit.d.ts +1 -1
  320. package/lib/AWS/Organizations/Policy.d.ts +1 -1
  321. package/lib/AWS/Organizations/PolicyAttachment.d.ts +1 -1
  322. package/lib/AWS/Organizations/Root.d.ts +1 -1
  323. package/lib/AWS/Organizations/RootPolicyType.d.ts +1 -1
  324. package/lib/AWS/Organizations/TrustedServiceAccess.d.ts +1 -1
  325. package/lib/AWS/Organizations/common.d.ts +2 -2
  326. package/lib/AWS/Providers.d.ts +3 -2
  327. package/lib/AWS/Providers.d.ts.map +1 -1
  328. package/lib/AWS/Providers.js +2 -2
  329. package/lib/AWS/Providers.js.map +1 -1
  330. package/lib/AWS/RDS/Connect.d.ts +1 -1
  331. package/lib/AWS/RDS/DBCluster.d.ts +1 -1
  332. package/lib/AWS/RDS/DBClusterEndpoint.d.ts +1 -1
  333. package/lib/AWS/RDS/DBClusterParameterGroup.d.ts +1 -1
  334. package/lib/AWS/RDS/DBInstance.d.ts +1 -1
  335. package/lib/AWS/RDS/DBParameterGroup.d.ts +1 -1
  336. package/lib/AWS/RDS/DBProxy.d.ts +1 -1
  337. package/lib/AWS/RDS/DBProxyEndpoint.d.ts +1 -1
  338. package/lib/AWS/RDS/DBProxyTargetGroup.d.ts +1 -1
  339. package/lib/AWS/RDS/DBSubnetGroup.d.ts +1 -1
  340. package/lib/AWS/RDSData/BatchExecuteStatement.d.ts +1 -1
  341. package/lib/AWS/RDSData/BeginTransaction.d.ts +1 -1
  342. package/lib/AWS/RDSData/CommitTransaction.d.ts +1 -1
  343. package/lib/AWS/RDSData/ExecuteSql.d.ts +1 -1
  344. package/lib/AWS/RDSData/ExecuteStatement.d.ts +1 -1
  345. package/lib/AWS/RDSData/RollbackTransaction.d.ts +1 -1
  346. package/lib/AWS/Region.d.ts +2 -0
  347. package/lib/AWS/Region.d.ts.map +1 -1
  348. package/lib/AWS/Region.js +8 -3
  349. package/lib/AWS/Region.js.map +1 -1
  350. package/lib/AWS/Route53/Record.d.ts +1 -1
  351. package/lib/AWS/S3/AbortMultipartUpload.d.ts +1 -1
  352. package/lib/AWS/S3/Bucket.d.ts +6 -3
  353. package/lib/AWS/S3/Bucket.d.ts.map +1 -1
  354. package/lib/AWS/S3/Bucket.js +3 -4
  355. package/lib/AWS/S3/Bucket.js.map +1 -1
  356. package/lib/AWS/S3/CompleteMultipartUpload.d.ts +1 -1
  357. package/lib/AWS/S3/CopyObject.d.ts +1 -1
  358. package/lib/AWS/S3/CreateMultipartUpload.d.ts +1 -1
  359. package/lib/AWS/S3/DeleteObject.d.ts +1 -1
  360. package/lib/AWS/S3/GetObject.d.ts +1 -1
  361. package/lib/AWS/S3/HeadObject.d.ts +1 -1
  362. package/lib/AWS/S3/ListObjectsV2.d.ts +1 -1
  363. package/lib/AWS/S3/PutObject.d.ts +1 -1
  364. package/lib/AWS/S3/UploadPart.d.ts +1 -1
  365. package/lib/AWS/SNS/AddPermission.d.ts +1 -1
  366. package/lib/AWS/SNS/ConfirmSubscription.d.ts +1 -1
  367. package/lib/AWS/SNS/GetDataProtectionPolicy.d.ts +1 -1
  368. package/lib/AWS/SNS/GetSubscriptionAttributes.d.ts +1 -1
  369. package/lib/AWS/SNS/GetTopicAttributes.d.ts +1 -1
  370. package/lib/AWS/SNS/ListSubscriptions.d.ts +1 -1
  371. package/lib/AWS/SNS/ListSubscriptionsByTopic.d.ts +1 -1
  372. package/lib/AWS/SNS/ListTagsForResource.d.ts +1 -1
  373. package/lib/AWS/SNS/ListTopics.d.ts +1 -1
  374. package/lib/AWS/SNS/Publish.d.ts +1 -1
  375. package/lib/AWS/SNS/PublishBatch.d.ts +1 -1
  376. package/lib/AWS/SNS/PutDataProtectionPolicy.d.ts +1 -1
  377. package/lib/AWS/SNS/RemovePermission.d.ts +1 -1
  378. package/lib/AWS/SNS/SetSubscriptionAttributes.d.ts +1 -1
  379. package/lib/AWS/SNS/SetTopicAttributes.d.ts +1 -1
  380. package/lib/AWS/SNS/Subscription.d.ts +1 -1
  381. package/lib/AWS/SNS/TagResource.d.ts +1 -1
  382. package/lib/AWS/SNS/Topic.d.ts +1 -1
  383. package/lib/AWS/SNS/UntagResource.d.ts +1 -1
  384. package/lib/AWS/SQS/DeleteMessage.d.ts +1 -1
  385. package/lib/AWS/SQS/DeleteMessageBatch.d.ts +1 -1
  386. package/lib/AWS/SQS/Queue.d.ts +1 -2
  387. package/lib/AWS/SQS/Queue.d.ts.map +1 -1
  388. package/lib/AWS/SQS/Queue.js +2 -3
  389. package/lib/AWS/SQS/Queue.js.map +1 -1
  390. package/lib/AWS/SQS/ReceiveMessage.d.ts +1 -1
  391. package/lib/AWS/SQS/SendMessage.d.ts +1 -1
  392. package/lib/AWS/SQS/SendMessageBatch.d.ts +1 -1
  393. package/lib/AWS/Scheduler/Schedule.d.ts +1 -1
  394. package/lib/AWS/Scheduler/ScheduleGroup.d.ts +1 -1
  395. package/lib/AWS/SecretsManager/DescribeSecret.d.ts +1 -1
  396. package/lib/AWS/SecretsManager/GetRandomPassword.d.ts +1 -1
  397. package/lib/AWS/SecretsManager/GetSecretValue.d.ts +1 -1
  398. package/lib/AWS/SecretsManager/ListSecrets.d.ts +1 -1
  399. package/lib/AWS/SecretsManager/PutSecretValue.d.ts +1 -1
  400. package/lib/AWS/SecretsManager/Secret.d.ts +1 -1
  401. package/lib/AWS/Website/AssetDeployment.d.ts +1 -1
  402. package/lib/AWS/index.d.ts +0 -1
  403. package/lib/AWS/index.d.ts.map +1 -1
  404. package/lib/AWS/index.js +0 -1
  405. package/lib/AWS/index.js.map +1 -1
  406. package/lib/Auth/Profile.d.ts +10 -10
  407. package/lib/Auth/Profile.d.ts.map +1 -1
  408. package/lib/Auth/Profile.js +4 -4
  409. package/lib/Auth/Profile.js.map +1 -1
  410. package/lib/Axiom/Credentials.d.ts +2 -3
  411. package/lib/Axiom/Credentials.d.ts.map +1 -1
  412. package/lib/Axiom/Credentials.js +3 -3
  413. package/lib/Axiom/Credentials.js.map +1 -1
  414. package/lib/Axiom/Dataset.js +1 -1
  415. package/lib/Axiom/Dataset.js.map +1 -1
  416. package/lib/Axiom/Providers.d.ts +1 -1
  417. package/lib/Axiom/Providers.d.ts.map +1 -1
  418. package/lib/Axiom/Providers.js +1 -1
  419. package/lib/Axiom/Providers.js.map +1 -1
  420. package/lib/Binding.d.ts +2 -2
  421. package/lib/Binding.d.ts.map +1 -1
  422. package/lib/Binding.js.map +1 -1
  423. package/lib/Cli/commands/_shared.d.ts +3 -3
  424. package/lib/Cli/commands/_shared.d.ts.map +1 -1
  425. package/lib/Cli/commands/_shared.js.map +1 -1
  426. package/lib/Cli/commands/aws.d.ts +1 -1
  427. package/lib/Cli/commands/aws.d.ts.map +1 -1
  428. package/lib/Cli/commands/aws.js +3 -3
  429. package/lib/Cli/commands/aws.js.map +1 -1
  430. package/lib/Cli/commands/cloudflare.js +1 -1
  431. package/lib/Cli/commands/cloudflare.js.map +1 -1
  432. package/lib/Cli/commands/deploy.d.ts +4 -4
  433. package/lib/Cli/commands/deploy.d.ts.map +1 -1
  434. package/lib/Cli/commands/login.d.ts +2 -3
  435. package/lib/Cli/commands/login.d.ts.map +1 -1
  436. package/lib/Cli/commands/login.js +6 -15
  437. package/lib/Cli/commands/login.js.map +1 -1
  438. package/lib/Cli/commands/logs.d.ts +1 -1
  439. package/lib/Cli/commands/logs.d.ts.map +1 -1
  440. package/lib/Cli/commands/profile.js +3 -3
  441. package/lib/Cli/commands/profile.js.map +1 -1
  442. package/lib/Cli/commands/tail.d.ts +1 -1
  443. package/lib/Cli/commands/tail.d.ts.map +1 -1
  444. package/lib/Cloudflare/AiGateway/AiGateway.d.ts.map +1 -1
  445. package/lib/Cloudflare/AiGateway/AiGateway.js +185 -180
  446. package/lib/Cloudflare/AiGateway/AiGateway.js.map +1 -1
  447. package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts.map +1 -1
  448. package/lib/Cloudflare/ApiToken/AccountApiToken.js +103 -102
  449. package/lib/Cloudflare/ApiToken/AccountApiToken.js.map +1 -1
  450. package/lib/Cloudflare/ApiToken/UserApiToken.d.ts.map +1 -1
  451. package/lib/Cloudflare/ApiToken/UserApiToken.js +77 -81
  452. package/lib/Cloudflare/ApiToken/UserApiToken.js.map +1 -1
  453. package/lib/Cloudflare/CloudflareEnvironment.d.ts +4 -3
  454. package/lib/Cloudflare/CloudflareEnvironment.d.ts.map +1 -1
  455. package/lib/Cloudflare/CloudflareEnvironment.js +3 -4
  456. package/lib/Cloudflare/CloudflareEnvironment.js.map +1 -1
  457. package/lib/Cloudflare/Container/ContainerApplication.d.ts.map +1 -1
  458. package/lib/Cloudflare/Container/ContainerApplication.js +18 -18
  459. package/lib/Cloudflare/Container/ContainerApplication.js.map +1 -1
  460. package/lib/Cloudflare/Credentials.d.ts +2 -2
  461. package/lib/Cloudflare/Credentials.d.ts.map +1 -1
  462. package/lib/Cloudflare/Credentials.js +2 -2
  463. package/lib/Cloudflare/Credentials.js.map +1 -1
  464. package/lib/Cloudflare/D1/D1Database.d.ts +3 -1
  465. package/lib/Cloudflare/D1/D1Database.d.ts.map +1 -1
  466. package/lib/Cloudflare/D1/D1Database.js +205 -201
  467. package/lib/Cloudflare/D1/D1Database.js.map +1 -1
  468. package/lib/Cloudflare/EdgeSession.d.ts.map +1 -1
  469. package/lib/Cloudflare/EdgeSession.js +6 -5
  470. package/lib/Cloudflare/EdgeSession.js.map +1 -1
  471. package/lib/Cloudflare/Email/EmailAddress.d.ts.map +1 -1
  472. package/lib/Cloudflare/Email/EmailAddress.js +69 -61
  473. package/lib/Cloudflare/Email/EmailAddress.js.map +1 -1
  474. package/lib/Cloudflare/Email/EmailRouting.d.ts.map +1 -1
  475. package/lib/Cloudflare/Email/EmailRouting.js +63 -56
  476. package/lib/Cloudflare/Email/EmailRouting.js.map +1 -1
  477. package/lib/Cloudflare/Email/EmailRule.d.ts.map +1 -1
  478. package/lib/Cloudflare/Email/EmailRule.js +67 -63
  479. package/lib/Cloudflare/Email/EmailRule.js.map +1 -1
  480. package/lib/Cloudflare/Hyperdrive/Hyperdrive.d.ts.map +1 -1
  481. package/lib/Cloudflare/Hyperdrive/Hyperdrive.js +140 -138
  482. package/lib/Cloudflare/Hyperdrive/Hyperdrive.js.map +1 -1
  483. package/lib/Cloudflare/KV/KVNamespace.d.ts.map +1 -1
  484. package/lib/Cloudflare/KV/KVNamespace.js +115 -108
  485. package/lib/Cloudflare/KV/KVNamespace.js.map +1 -1
  486. package/lib/Cloudflare/Local.js +5 -2
  487. package/lib/Cloudflare/Local.js.map +1 -1
  488. package/lib/Cloudflare/LocalRuntime.d.ts +21 -0
  489. package/lib/Cloudflare/LocalRuntime.d.ts.map +1 -0
  490. package/lib/Cloudflare/LocalRuntime.js +40 -0
  491. package/lib/Cloudflare/LocalRuntime.js.map +1 -0
  492. package/lib/Cloudflare/Providers.d.ts +1 -1
  493. package/lib/Cloudflare/Providers.d.ts.map +1 -1
  494. package/lib/Cloudflare/Providers.js +2 -1
  495. package/lib/Cloudflare/Providers.js.map +1 -1
  496. package/lib/Cloudflare/Queue/Queue.d.ts +4 -1
  497. package/lib/Cloudflare/Queue/Queue.d.ts.map +1 -1
  498. package/lib/Cloudflare/Queue/Queue.js +154 -87
  499. package/lib/Cloudflare/Queue/Queue.js.map +1 -1
  500. package/lib/Cloudflare/Queue/QueueConsumer.d.ts +32 -26
  501. package/lib/Cloudflare/Queue/QueueConsumer.d.ts.map +1 -1
  502. package/lib/Cloudflare/Queue/QueueConsumer.js +323 -243
  503. package/lib/Cloudflare/Queue/QueueConsumer.js.map +1 -1
  504. package/lib/Cloudflare/R2/R2Bucket.d.ts.map +1 -1
  505. package/lib/Cloudflare/R2/R2Bucket.js +101 -66
  506. package/lib/Cloudflare/R2/R2Bucket.js.map +1 -1
  507. package/lib/Cloudflare/Ruleset/Ruleset.d.ts.map +1 -1
  508. package/lib/Cloudflare/Ruleset/Ruleset.js +81 -81
  509. package/lib/Cloudflare/Ruleset/Ruleset.js.map +1 -1
  510. package/lib/Cloudflare/SecretsStore/Secret.d.ts.map +1 -1
  511. package/lib/Cloudflare/SecretsStore/Secret.js +144 -143
  512. package/lib/Cloudflare/SecretsStore/Secret.js.map +1 -1
  513. package/lib/Cloudflare/SecretsStore/SecretsStore.d.ts.map +1 -1
  514. package/lib/Cloudflare/SecretsStore/SecretsStore.js +74 -75
  515. package/lib/Cloudflare/SecretsStore/SecretsStore.js.map +1 -1
  516. package/lib/Cloudflare/StateStore/State.d.ts +1 -1
  517. package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
  518. package/lib/Cloudflare/StateStore/State.js +3 -3
  519. package/lib/Cloudflare/StateStore/State.js.map +1 -1
  520. package/lib/Cloudflare/Tunnel/Tunnel.d.ts.map +1 -1
  521. package/lib/Cloudflare/Tunnel/Tunnel.js +166 -158
  522. package/lib/Cloudflare/Tunnel/Tunnel.js.map +1 -1
  523. package/lib/Cloudflare/Tunnel/TunnelBinding.d.ts +2 -2
  524. package/lib/Cloudflare/Tunnel/TunnelBinding.d.ts.map +1 -1
  525. package/lib/Cloudflare/Tunnel/TunnelBinding.js +10 -11
  526. package/lib/Cloudflare/Tunnel/TunnelBinding.js.map +1 -1
  527. package/lib/Cloudflare/Tunnel/TunnelRead.d.ts +4 -3
  528. package/lib/Cloudflare/Tunnel/TunnelRead.d.ts.map +1 -1
  529. package/lib/Cloudflare/Tunnel/TunnelRead.js.map +1 -1
  530. package/lib/Cloudflare/Tunnel/TunnelReadWrite.d.ts +4 -3
  531. package/lib/Cloudflare/Tunnel/TunnelReadWrite.d.ts.map +1 -1
  532. package/lib/Cloudflare/Tunnel/TunnelReadWrite.js.map +1 -1
  533. package/lib/Cloudflare/Tunnel/TunnelWrite.d.ts +4 -3
  534. package/lib/Cloudflare/Tunnel/TunnelWrite.d.ts.map +1 -1
  535. package/lib/Cloudflare/Tunnel/TunnelWrite.js.map +1 -1
  536. package/lib/Cloudflare/Vectorize/VectorizeIndex.d.ts.map +1 -1
  537. package/lib/Cloudflare/Vectorize/VectorizeIndex.js +79 -75
  538. package/lib/Cloudflare/Vectorize/VectorizeIndex.js.map +1 -1
  539. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.d.ts.map +1 -1
  540. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.js +85 -82
  541. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.js.map +1 -1
  542. package/lib/Cloudflare/VpcService/VpcService.d.ts.map +1 -1
  543. package/lib/Cloudflare/VpcService/VpcService.js +112 -106
  544. package/lib/Cloudflare/VpcService/VpcService.js.map +1 -1
  545. package/lib/Cloudflare/VpcService/VpcServiceRef.js +1 -1
  546. package/lib/Cloudflare/VpcService/VpcServiceRef.js.map +1 -1
  547. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts +3 -5
  548. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
  549. package/lib/Cloudflare/Workers/LocalWorkerProvider.js +34 -26
  550. package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
  551. package/lib/Cloudflare/Workers/Worker.d.ts +3 -5
  552. package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
  553. package/lib/Cloudflare/Workers/Worker.js +116 -68
  554. package/lib/Cloudflare/Workers/Worker.js.map +1 -1
  555. package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
  556. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +2 -14
  557. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
  558. package/lib/Cloudflare/Workers/Workflow.js +6 -6
  559. package/lib/Cloudflare/Workers/Workflow.js.map +1 -1
  560. package/lib/Cloudflare/Zaraz/ZarazConfig.d.ts.map +1 -1
  561. package/lib/Cloudflare/Zaraz/ZarazConfig.js +68 -75
  562. package/lib/Cloudflare/Zaraz/ZarazConfig.js.map +1 -1
  563. package/lib/Cloudflare/Zone/Zone.d.ts.map +1 -1
  564. package/lib/Cloudflare/Zone/Zone.js +18 -13
  565. package/lib/Cloudflare/Zone/Zone.js.map +1 -1
  566. package/lib/GitHub/Comment.d.ts +1 -6
  567. package/lib/GitHub/Comment.d.ts.map +1 -1
  568. package/lib/GitHub/Comment.js +3 -9
  569. package/lib/GitHub/Comment.js.map +1 -1
  570. package/lib/GitHub/Credentials.d.ts +4 -3
  571. package/lib/GitHub/Credentials.d.ts.map +1 -1
  572. package/lib/GitHub/Credentials.js +5 -5
  573. package/lib/GitHub/Credentials.js.map +1 -1
  574. package/lib/GitHub/Octokit.d.ts +5 -0
  575. package/lib/GitHub/Octokit.d.ts.map +1 -0
  576. package/lib/GitHub/Octokit.js +7 -0
  577. package/lib/GitHub/Octokit.js.map +1 -0
  578. package/lib/GitHub/Providers.d.ts +1 -1
  579. package/lib/GitHub/Providers.d.ts.map +1 -1
  580. package/lib/GitHub/Secret.d.ts +1 -2
  581. package/lib/GitHub/Secret.d.ts.map +1 -1
  582. package/lib/GitHub/Secret.js +8 -12
  583. package/lib/GitHub/Secret.js.map +1 -1
  584. package/lib/GitHub/Variable.d.ts +1 -2
  585. package/lib/GitHub/Variable.d.ts.map +1 -1
  586. package/lib/GitHub/Variable.js +3 -7
  587. package/lib/GitHub/Variable.js.map +1 -1
  588. package/lib/Kubernetes/client.d.ts +11 -11
  589. package/lib/Kubernetes/client.d.ts.map +1 -1
  590. package/lib/Kubernetes/client.js +2 -2
  591. package/lib/Kubernetes/client.js.map +1 -1
  592. package/lib/Local/ProviderLayer.d.ts +10 -0
  593. package/lib/Local/ProviderLayer.d.ts.map +1 -0
  594. package/lib/Local/ProviderLayer.js +7 -0
  595. package/lib/Local/ProviderLayer.js.map +1 -0
  596. package/lib/Local/RpcProvider.d.ts.map +1 -1
  597. package/lib/Local/RpcProvider.js +2 -1
  598. package/lib/Local/RpcProvider.js.map +1 -1
  599. package/lib/Local/RpcProviderProxy.js.map +1 -1
  600. package/lib/Local/RpcSerialization.js +2 -2
  601. package/lib/Local/RpcSerialization.js.map +1 -1
  602. package/lib/Local/RpcServerEnvironment.d.ts +2 -2
  603. package/lib/Local/RpcServerEnvironment.d.ts.map +1 -1
  604. package/lib/Neon/AuthProvider.d.ts +2 -2
  605. package/lib/Neon/AuthProvider.d.ts.map +1 -1
  606. package/lib/Neon/AuthProvider.js +2 -2
  607. package/lib/Neon/AuthProvider.js.map +1 -1
  608. package/lib/Neon/Branch.d.ts.map +1 -1
  609. package/lib/Neon/Branch.js +213 -215
  610. package/lib/Neon/Branch.js.map +1 -1
  611. package/lib/Neon/Credentials.d.ts +2 -3
  612. package/lib/Neon/Credentials.d.ts.map +1 -1
  613. package/lib/Neon/Credentials.js +3 -3
  614. package/lib/Neon/Credentials.js.map +1 -1
  615. package/lib/Neon/Project.d.ts +22 -22
  616. package/lib/Neon/Project.d.ts.map +1 -1
  617. package/lib/Neon/Project.js +263 -266
  618. package/lib/Neon/Project.js.map +1 -1
  619. package/lib/Neon/Providers.d.ts +2 -4
  620. package/lib/Neon/Providers.d.ts.map +1 -1
  621. package/lib/Neon/Providers.js +1 -3
  622. package/lib/Neon/Providers.js.map +1 -1
  623. package/lib/Neon/index.d.ts +0 -1
  624. package/lib/Neon/index.d.ts.map +1 -1
  625. package/lib/Neon/index.js +0 -1
  626. package/lib/Neon/index.js.map +1 -1
  627. package/lib/Output.d.ts +2 -1
  628. package/lib/Output.d.ts.map +1 -1
  629. package/lib/Output.js +7 -3
  630. package/lib/Output.js.map +1 -1
  631. package/lib/Plan.d.ts.map +1 -1
  632. package/lib/Plan.js +14 -6
  633. package/lib/Plan.js.map +1 -1
  634. package/lib/Planetscale/Branch.d.ts +1 -2
  635. package/lib/Planetscale/Branch.d.ts.map +1 -1
  636. package/lib/Planetscale/Branch.js +252 -235
  637. package/lib/Planetscale/Branch.js.map +1 -1
  638. package/lib/Planetscale/Credentials.d.ts +2 -3
  639. package/lib/Planetscale/Credentials.d.ts.map +1 -1
  640. package/lib/Planetscale/Credentials.js +6 -6
  641. package/lib/Planetscale/Credentials.js.map +1 -1
  642. package/lib/Planetscale/Database.d.ts +1 -1
  643. package/lib/Planetscale/MySQL/MySQLBranch.d.ts +1 -1
  644. package/lib/Planetscale/MySQL/MySQLBranch.d.ts.map +1 -1
  645. package/lib/Planetscale/MySQL/MySQLClusterSize.d.ts +2 -2
  646. package/lib/Planetscale/MySQL/MySQLClusterSize.d.ts.map +1 -1
  647. package/lib/Planetscale/MySQL/MySQLDatabase.d.ts +1 -1
  648. package/lib/Planetscale/MySQL/MySQLDatabase.d.ts.map +1 -1
  649. package/lib/Planetscale/MySQL/MySQLDatabase.js +215 -215
  650. package/lib/Planetscale/MySQL/MySQLDatabase.js.map +1 -1
  651. package/lib/Planetscale/MySQL/MySQLMigrations.d.ts +2 -2
  652. package/lib/Planetscale/MySQL/MySQLMigrations.d.ts.map +1 -1
  653. package/lib/Planetscale/MySQL/MySQLPassword.d.ts.map +1 -1
  654. package/lib/Planetscale/MySQL/MySQLPassword.js +145 -145
  655. package/lib/Planetscale/MySQL/MySQLPassword.js.map +1 -1
  656. package/lib/Planetscale/Postgres/PostgresBranch.d.ts +1 -1
  657. package/lib/Planetscale/Postgres/PostgresBranch.d.ts.map +1 -1
  658. package/lib/Planetscale/Postgres/PostgresClusterSize.d.ts +3 -2
  659. package/lib/Planetscale/Postgres/PostgresClusterSize.d.ts.map +1 -1
  660. package/lib/Planetscale/Postgres/PostgresClusterSize.js +16 -6
  661. package/lib/Planetscale/Postgres/PostgresClusterSize.js.map +1 -1
  662. package/lib/Planetscale/Postgres/PostgresDatabase.d.ts +1 -1
  663. package/lib/Planetscale/Postgres/PostgresDatabase.d.ts.map +1 -1
  664. package/lib/Planetscale/Postgres/PostgresDatabase.js +220 -218
  665. package/lib/Planetscale/Postgres/PostgresDatabase.js.map +1 -1
  666. package/lib/Planetscale/Postgres/PostgresDefaultRole.d.ts.map +1 -1
  667. package/lib/Planetscale/Postgres/PostgresDefaultRole.js +123 -121
  668. package/lib/Planetscale/Postgres/PostgresDefaultRole.js.map +1 -1
  669. package/lib/Planetscale/Postgres/PostgresMigrations.d.ts +2 -2
  670. package/lib/Planetscale/Postgres/PostgresMigrations.d.ts.map +1 -1
  671. package/lib/Planetscale/Postgres/PostgresRole.d.ts.map +1 -1
  672. package/lib/Planetscale/Postgres/PostgresRole.js +159 -160
  673. package/lib/Planetscale/Postgres/PostgresRole.js.map +1 -1
  674. package/lib/Planetscale/Providers.d.ts +1 -2
  675. package/lib/Planetscale/Providers.d.ts.map +1 -1
  676. package/lib/Planetscale/Providers.js.map +1 -1
  677. package/lib/Planetscale/Util.d.ts +3 -3
  678. package/lib/Planetscale/Util.d.ts.map +1 -1
  679. package/lib/Planetscale/Util.js +7 -5
  680. package/lib/Planetscale/Util.js.map +1 -1
  681. package/lib/Server/S3BucketEventSource.d.ts +1 -1
  682. package/lib/Server/S3BucketEventSource.d.ts.map +1 -1
  683. package/lib/Server/SQSQueueEventSource.d.ts +2 -2
  684. package/lib/Server/SQSQueueEventSource.d.ts.map +1 -1
  685. package/lib/Server/SQSQueueEventSource.js +3 -2
  686. package/lib/Server/SQSQueueEventSource.js.map +1 -1
  687. package/lib/Stack.d.ts +4 -4
  688. package/lib/Stack.d.ts.map +1 -1
  689. package/lib/Stack.js +1 -1
  690. package/lib/Stack.js.map +1 -1
  691. package/lib/tsconfig.test.tsbuildinfo +1 -1
  692. package/package.json +14 -13
  693. package/src/AWS/ApiGateway/ApiKey.ts +4 -5
  694. package/src/AWS/ApiGateway/RestApi.ts +5 -6
  695. package/src/AWS/ApiGateway/Stage.ts +4 -5
  696. package/src/AWS/ApiGateway/UsagePlan.ts +4 -5
  697. package/src/AWS/ApiGateway/VpcLink.ts +4 -6
  698. package/src/AWS/Assets.ts +161 -108
  699. package/src/AWS/AuthProvider.ts +221 -124
  700. package/src/AWS/AutoScaling/LaunchTemplate.ts +31 -32
  701. package/src/AWS/Bootstrap.ts +66 -195
  702. package/src/AWS/CloudWatch/Alarm.ts +9 -8
  703. package/src/AWS/CloudWatch/AlarmMuteRule.ts +8 -7
  704. package/src/AWS/CloudWatch/CompositeAlarm.ts +9 -8
  705. package/src/AWS/CloudWatch/Dashboard.ts +9 -6
  706. package/src/AWS/CloudWatch/InsightRule.ts +10 -9
  707. package/src/AWS/CloudWatch/MetricStream.ts +9 -7
  708. package/src/AWS/Credentials.ts +4 -1
  709. package/src/AWS/EC2/EIP.ts +5 -5
  710. package/src/AWS/EC2/EgressOnlyInternetGateway.ts +20 -17
  711. package/src/AWS/EC2/Instance.ts +42 -41
  712. package/src/AWS/EC2/InternetGateway.ts +4 -8
  713. package/src/AWS/EC2/NatGateway.ts +10 -11
  714. package/src/AWS/EC2/Network.ts +2 -2
  715. package/src/AWS/EC2/NetworkAcl.ts +38 -39
  716. package/src/AWS/EC2/RouteTable.ts +3 -6
  717. package/src/AWS/EC2/SecurityGroup.ts +43 -44
  718. package/src/AWS/EC2/Vpc.ts +2 -5
  719. package/src/AWS/EC2/VpcEndpoint.ts +47 -47
  720. package/src/AWS/EC2/hosted.ts +19 -33
  721. package/src/AWS/ECS/CapacityProvider.ts +1 -3
  722. package/src/AWS/ECS/Cluster.ts +2 -5
  723. package/src/AWS/ECS/Task.ts +4 -3
  724. package/src/AWS/Endpoint.ts +12 -6
  725. package/src/AWS/Environment.ts +22 -120
  726. package/src/AWS/EventBridge/EventBus.ts +2 -5
  727. package/src/AWS/EventBridge/ListRules.ts +2 -5
  728. package/src/AWS/EventBridge/PutEvents.ts +2 -3
  729. package/src/AWS/EventBridge/Rule.ts +3 -5
  730. package/src/AWS/IAM/OpenIDConnectProvider.ts +10 -4
  731. package/src/AWS/IAM/Policy.ts +1 -2
  732. package/src/AWS/IAM/Role.ts +2 -2
  733. package/src/AWS/IAM/SAMLProvider.ts +3 -3
  734. package/src/AWS/Kinesis/Stream.ts +2 -5
  735. package/src/AWS/Lambda/EventSourceMapping.ts +2 -5
  736. package/src/AWS/Lambda/Function.ts +10 -8
  737. package/src/AWS/Lambda/Permission.ts +1 -1
  738. package/src/AWS/Logs/LogGroup.ts +2 -5
  739. package/src/AWS/Providers.ts +2 -2
  740. package/src/AWS/Region.ts +15 -3
  741. package/src/AWS/S3/Bucket.ts +15 -15
  742. package/src/AWS/SQS/Queue.ts +2 -3
  743. package/src/AWS/index.ts +0 -1
  744. package/src/Auth/Profile.ts +13 -12
  745. package/src/Axiom/Credentials.ts +4 -2
  746. package/src/Axiom/Dataset.ts +1 -1
  747. package/src/Axiom/Providers.ts +1 -1
  748. package/src/Binding.ts +2 -5
  749. package/src/Cli/commands/_shared.ts +2 -2
  750. package/src/Cli/commands/aws.ts +12 -9
  751. package/src/Cli/commands/cloudflare.ts +1 -1
  752. package/src/Cli/commands/login.ts +6 -22
  753. package/src/Cli/commands/profile.ts +3 -3
  754. package/src/Cloudflare/AiGateway/AiGateway.ts +219 -218
  755. package/src/Cloudflare/ApiToken/AccountApiToken.ts +142 -153
  756. package/src/Cloudflare/ApiToken/UserApiToken.ts +105 -121
  757. package/src/Cloudflare/CloudflareEnvironment.ts +10 -5
  758. package/src/Cloudflare/Container/ContainerApplication.ts +32 -29
  759. package/src/Cloudflare/Credentials.ts +2 -2
  760. package/src/Cloudflare/D1/D1Database.ts +268 -263
  761. package/src/Cloudflare/EdgeSession.ts +6 -5
  762. package/src/Cloudflare/Email/EmailAddress.ts +74 -71
  763. package/src/Cloudflare/Email/EmailRouting.ts +73 -75
  764. package/src/Cloudflare/Email/EmailRule.ts +79 -80
  765. package/src/Cloudflare/Hyperdrive/Hyperdrive.ts +156 -161
  766. package/src/Cloudflare/KV/KVNamespace.ts +139 -138
  767. package/src/Cloudflare/Local.ts +9 -5
  768. package/src/Cloudflare/LocalRuntime.ts +70 -0
  769. package/src/Cloudflare/Providers.ts +2 -0
  770. package/src/Cloudflare/Queue/Queue.ts +184 -110
  771. package/src/Cloudflare/Queue/QueueConsumer.ts +452 -346
  772. package/src/Cloudflare/R2/R2Bucket.ts +200 -165
  773. package/src/Cloudflare/Ruleset/Ruleset.ts +93 -98
  774. package/src/Cloudflare/SecretsStore/Secret.ts +187 -194
  775. package/src/Cloudflare/SecretsStore/SecretsStore.ts +82 -87
  776. package/src/Cloudflare/StateStore/State.ts +5 -3
  777. package/src/Cloudflare/Tunnel/Tunnel.ts +187 -186
  778. package/src/Cloudflare/Tunnel/TunnelBinding.ts +16 -9
  779. package/src/Cloudflare/Tunnel/TunnelRead.ts +3 -2
  780. package/src/Cloudflare/Tunnel/TunnelReadWrite.ts +7 -2
  781. package/src/Cloudflare/Tunnel/TunnelWrite.ts +3 -2
  782. package/src/Cloudflare/Vectorize/VectorizeIndex.ts +98 -98
  783. package/src/Cloudflare/Vectorize/VectorizeMetadataIndex.ts +97 -109
  784. package/src/Cloudflare/VpcService/VpcService.ts +126 -125
  785. package/src/Cloudflare/VpcService/VpcServiceRef.ts +1 -1
  786. package/src/Cloudflare/Workers/LocalWorkerProvider.ts +41 -31
  787. package/src/Cloudflare/Workers/Worker.ts +328 -295
  788. package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +7 -21
  789. package/src/Cloudflare/Workers/Workflow.ts +8 -8
  790. package/src/Cloudflare/Zaraz/ZarazConfig.ts +87 -99
  791. package/src/Cloudflare/Zone/Zone.ts +36 -33
  792. package/src/GitHub/Comment.ts +3 -20
  793. package/src/GitHub/Credentials.ts +9 -5
  794. package/src/GitHub/Octokit.ts +9 -0
  795. package/src/GitHub/Secret.ts +8 -21
  796. package/src/GitHub/Variable.ts +3 -8
  797. package/src/Kubernetes/client.ts +2 -2
  798. package/src/Local/ProviderLayer.ts +22 -0
  799. package/src/Local/RpcProvider.ts +2 -0
  800. package/src/Local/RpcProviderProxy.ts +2 -2
  801. package/src/Local/RpcSerialization.ts +2 -2
  802. package/src/Neon/AuthProvider.ts +2 -2
  803. package/src/Neon/Branch.ts +264 -272
  804. package/src/Neon/Credentials.ts +4 -2
  805. package/src/Neon/Project.ts +372 -378
  806. package/src/Neon/Providers.ts +0 -6
  807. package/src/Neon/index.ts +0 -1
  808. package/src/Output.ts +8 -4
  809. package/src/Plan.ts +15 -7
  810. package/src/Planetscale/Branch.ts +346 -328
  811. package/src/Planetscale/Credentials.ts +20 -15
  812. package/src/Planetscale/Database.ts +1 -1
  813. package/src/Planetscale/MySQL/MySQLDatabase.ts +269 -280
  814. package/src/Planetscale/MySQL/MySQLPassword.ts +161 -168
  815. package/src/Planetscale/Postgres/PostgresClusterSize.ts +19 -5
  816. package/src/Planetscale/Postgres/PostgresDatabase.ts +287 -296
  817. package/src/Planetscale/Postgres/PostgresDefaultRole.ts +143 -146
  818. package/src/Planetscale/Postgres/PostgresRole.ts +188 -195
  819. package/src/Planetscale/Providers.ts +2 -7
  820. package/src/Planetscale/Util.ts +7 -5
  821. package/src/Server/SQSQueueEventSource.ts +3 -2
  822. package/src/Stack.ts +3 -3
  823. package/bin/alchemy.sh +0 -15
  824. package/lib/AWS/Context.d.ts +0 -8
  825. package/lib/AWS/Context.d.ts.map +0 -1
  826. package/lib/AWS/Context.js +0 -16
  827. package/lib/AWS/Context.js.map +0 -1
  828. package/lib/Neon/NeonEnvironment.d.ts +0 -11
  829. package/lib/Neon/NeonEnvironment.d.ts.map +0 -1
  830. package/lib/Neon/NeonEnvironment.js +0 -18
  831. package/lib/Neon/NeonEnvironment.js.map +0 -1
  832. package/src/AWS/Context.ts +0 -30
  833. package/src/Neon/NeonEnvironment.ts +0 -32
@@ -1,8 +1,9 @@
1
1
  import { Credentials } from "@distilled.cloud/planetscale/Credentials";
2
- import * as ops from "@distilled.cloud/planetscale/Operations";
2
+ import * as planetscale from "@distilled.cloud/planetscale/Operations";
3
3
  import * as Effect from "effect/Effect";
4
4
  import * as Redacted from "effect/Redacted";
5
5
  import { deepEqual, isResolved } from "../../Diff.ts";
6
+ import { createPhysicalName } from "../../PhysicalName.ts";
6
7
  import * as Provider from "../../Provider.ts";
7
8
  import { Resource } from "../../Resource.ts";
8
9
  import type { Providers } from "../Providers.ts";
@@ -14,7 +15,6 @@ import {
14
15
  import type { PostgresBranch } from "./PostgresBranch.ts";
15
16
  import type { PostgresDatabase } from "./PostgresDatabase.ts";
16
17
  import type { PostgresOrigin } from "./PostgresOrigin.ts";
17
- import { createPhysicalName } from "../../PhysicalName.ts";
18
18
 
19
19
  /**
20
20
  * Built-in PostgreSQL roles that can be inherited from. Custom role names
@@ -171,6 +171,192 @@ export type PostgresRole = Resource<
171
171
 
172
172
  export const PostgresRole = Resource<PostgresRole>("Planetscale.PostgresRole");
173
173
 
174
+ export const PostgresRoleProvider = () =>
175
+ Provider.succeed(PostgresRole, {
176
+ stables: ["id"],
177
+
178
+ diff: Effect.fn(function* ({ id, news, olds, output }) {
179
+ if (!isResolved(news)) return undefined;
180
+
181
+ // Successor is the only updatable property — everything else
182
+ // requires replacement.
183
+ if (news.ttl !== olds.ttl) {
184
+ return { action: "replace" } as const;
185
+ }
186
+ const newDb = resolveDatabaseName(news.database);
187
+ const oldDb = olds.database
188
+ ? resolveDatabaseName(olds.database)
189
+ : undefined;
190
+ if (oldDb && newDb !== oldDb) {
191
+ return { action: "replace" } as const;
192
+ }
193
+ const newBranch = resolveBranchName(news.branch);
194
+ const oldBranch = resolveBranchName(olds.branch);
195
+ if (newBranch !== oldBranch) {
196
+ return { action: "replace" } as const;
197
+ }
198
+ const newRoles = resolveInheritedRoles(news.inheritedRoles);
199
+ const oldRoles = output?.inheritedRoles ?? [];
200
+ if (!deepEqual(newRoles, oldRoles)) {
201
+ return { action: "replace" } as const;
202
+ }
203
+ const oldName = output?.name ?? (yield* resolveName(id, olds?.name));
204
+ const newName = yield* resolveName(id, news.name);
205
+
206
+ if (newName !== oldName) {
207
+ return { action: "update" } as const;
208
+ }
209
+
210
+ return undefined;
211
+ }),
212
+
213
+ read: Effect.fn(function* ({ output }) {
214
+ if (!output?.id) return undefined;
215
+
216
+ return yield* planetscale
217
+ .getRole({
218
+ branch: output.branch,
219
+ database: output.database,
220
+ organization: output.organization,
221
+ id: output.id,
222
+ })
223
+ .pipe(
224
+ Effect.map((token) =>
225
+ buildAttributes(token, output.password, {
226
+ inheritedRoles: token.inherited_roles as InheritedRole[],
227
+ successor: output.successor,
228
+ organization: output.organization,
229
+ database: output.database,
230
+ branch: token.branch.name,
231
+ }),
232
+ ),
233
+ Effect.catchTag("Forbidden", () => Effect.succeed(undefined)),
234
+ Effect.catchTag("NotFound", () => Effect.succeed(undefined)),
235
+ );
236
+ }),
237
+
238
+ reconcile: Effect.fn(function* ({ id, news, output }) {
239
+ const { organization: envOrg } = yield* yield* Credentials;
240
+ const organization = resolveDatabaseOrg(news.database) ?? envOrg;
241
+ const databaseName = resolveDatabaseName(news.database);
242
+ const branchName = resolveBranchName(news.branch);
243
+ const inheritedRoles = resolveInheritedRoles(news.inheritedRoles);
244
+ const successor = resolveSuccessorName(news.successor);
245
+ const desiredName = yield* resolveName(id, news.name);
246
+
247
+ // 1. Observe — fetch live state if we know the role id. Roles
248
+ // can only be looked up by id; without a cached id there is
249
+ // no way to find the live role, so we fall through to ensure.
250
+ const observed = output?.id
251
+ ? yield* planetscale
252
+ .getRole({
253
+ id: output.id,
254
+ branch: branchName,
255
+ organization,
256
+ database: databaseName,
257
+ })
258
+ .pipe(Effect.catchTag("NotFound", () => Effect.succeed(undefined)))
259
+ : undefined;
260
+
261
+ // 2. Ensure — create if missing. Single branch covers both
262
+ // greenfield (no output) and out-of-band-deletion (output
263
+ // cached but cloud lost it). The latter is structurally a
264
+ // rotation: the new role has fresh id/host/username/plaintext
265
+ // that propagate downstream through the dependency graph.
266
+ // There is no path to recover the original plaintext, so
267
+ // recreating is the only way to converge.
268
+ //
269
+ // Planetscale returns the plaintext password value exactly
270
+ // once on create; on an observe-hit we re-use the cached
271
+ // plaintext from output (which is why adoption requires
272
+ // pre-existing state — see `read`).
273
+ let live: planetscale.GetRoleOutput | planetscale.CreateRoleOutput;
274
+ let plaintext: Redacted.Redacted<string>;
275
+ if (observed) {
276
+ live = observed;
277
+ plaintext = output!.password;
278
+ } else {
279
+ const branchInfo = yield* planetscale.getBranch({
280
+ organization,
281
+ database: databaseName,
282
+ branch: branchName,
283
+ });
284
+ if (branchInfo.kind !== "postgresql") {
285
+ return yield* Effect.fail(
286
+ new PlanetscaleConflict({
287
+ message: `Cannot create a Role on MySQL database "${databaseName}". Roles are only supported on PostgreSQL. Use Password for MySQL.`,
288
+ }),
289
+ );
290
+ }
291
+ if (!branchInfo.ready) {
292
+ yield* waitForBranchReady(organization, databaseName, branchName);
293
+ }
294
+ const created = yield* planetscale.createRole({
295
+ name: desiredName,
296
+ branch: branchName,
297
+ organization,
298
+ database: databaseName,
299
+ ttl: news.ttl,
300
+ inherited_roles: inheritedRoles as SDKInheritedRole[],
301
+ });
302
+ if (!created.password) {
303
+ return yield* Effect.die(
304
+ `Planetscale did not return a password for Role "${desiredName}".`,
305
+ );
306
+ }
307
+ plaintext = created.password;
308
+ live = created;
309
+ }
310
+
311
+ // 3. Sync — only `name` is mutable in place; diff observed
312
+ // against desired and skip the API call when nothing
313
+ // changed. Everything else triggers a replace via diff().
314
+ if (live.name !== desiredName) {
315
+ live = yield* planetscale.updateRole({
316
+ id: live.id,
317
+ branch: branchName,
318
+ organization,
319
+ database: databaseName,
320
+ name: desiredName,
321
+ });
322
+ }
323
+
324
+ // 4. Return — fresh attrs sourced from observed cloud state,
325
+ // with cached or freshly-issued plaintext.
326
+ return buildAttributes(live, plaintext, {
327
+ inheritedRoles: live.inherited_roles as InheritedRole[],
328
+ successor,
329
+ organization,
330
+ database: databaseName,
331
+ branch: branchName,
332
+ });
333
+ }),
334
+
335
+ delete: Effect.fn(function* ({ output }) {
336
+ yield* planetscale
337
+ .deleteRole({
338
+ organization: output.organization,
339
+ database: output.database,
340
+ branch: output.branch,
341
+ id: output.id,
342
+ successor: output.successor,
343
+ })
344
+ .pipe(
345
+ Effect.catchTag("NotFound", () => Effect.void),
346
+ // 422 (UnprocessableEntity): role is still referenced. Log a
347
+ // warning rather than failing — the role will be cleaned up
348
+ // when the database/branch is deleted.
349
+ Effect.catchIf(
350
+ isKnownError(
351
+ "UnprocessableEntity",
352
+ "Role is still referenced and cannot be dropped.",
353
+ ),
354
+ () => Effect.void,
355
+ ),
356
+ );
357
+ }),
358
+ });
359
+
174
360
  // Structural shapes for runtime-resolved Resource references — see notes
175
361
  // in Password.ts.
176
362
  type DatabaseRef = string | { name: string; organization?: string };
@@ -274,196 +460,3 @@ const buildAttributes = (
274
460
  ttl: role.ttl,
275
461
  };
276
462
  };
277
-
278
- export const PostgresRoleProvider = () =>
279
- Provider.effect(
280
- PostgresRole,
281
- Effect.gen(function* () {
282
- const createRole = yield* ops.createRole;
283
- const deleteRole = yield* ops.deleteRole;
284
- const updateRole = yield* ops.updateRole;
285
- const getRole = yield* ops.getRole;
286
- const getBranch = yield* ops.getBranch;
287
-
288
- return {
289
- stables: ["id"],
290
-
291
- diff: Effect.fn(function* ({ id, news, olds, output }) {
292
- if (!isResolved(news)) return undefined;
293
-
294
- // Successor is the only updatable property — everything else
295
- // requires replacement.
296
- if (news.ttl !== olds.ttl) {
297
- return { action: "replace" } as const;
298
- }
299
- const newDb = resolveDatabaseName(news.database);
300
- const oldDb = olds.database
301
- ? resolveDatabaseName(olds.database)
302
- : undefined;
303
- if (oldDb && newDb !== oldDb) {
304
- return { action: "replace" } as const;
305
- }
306
- const newBranch = resolveBranchName(news.branch);
307
- const oldBranch = resolveBranchName(olds.branch);
308
- if (newBranch !== oldBranch) {
309
- return { action: "replace" } as const;
310
- }
311
- const newRoles = resolveInheritedRoles(news.inheritedRoles);
312
- const oldRoles = output?.inheritedRoles ?? [];
313
- if (!deepEqual(newRoles, oldRoles)) {
314
- return { action: "replace" } as const;
315
- }
316
- const oldName = output?.name ?? (yield* resolveName(id, olds?.name));
317
- const newName = yield* resolveName(id, news.name);
318
-
319
- if (newName !== oldName) {
320
- return { action: "update" } as const;
321
- }
322
-
323
- return undefined;
324
- }),
325
-
326
- read: Effect.fn(function* ({ output }) {
327
- if (!output?.id) return undefined;
328
-
329
- return yield* getRole({
330
- branch: output.branch,
331
- database: output.database,
332
- organization: output.organization,
333
- id: output.id,
334
- }).pipe(
335
- Effect.map((token) =>
336
- buildAttributes(token, output.password, {
337
- inheritedRoles: token.inherited_roles as InheritedRole[],
338
- successor: output.successor,
339
- organization: output.organization,
340
- database: output.database,
341
- branch: token.branch.name,
342
- }),
343
- ),
344
- Effect.catchTag("Forbidden", () => Effect.succeed(undefined)),
345
- Effect.catchTag("NotFound", () => Effect.succeed(undefined)),
346
- );
347
- }),
348
-
349
- reconcile: Effect.fn(function* ({ id, news, output }) {
350
- const { organization: envOrg } = yield* Credentials;
351
- const organization = resolveDatabaseOrg(news.database) ?? envOrg;
352
- const databaseName = resolveDatabaseName(news.database);
353
- const branchName = resolveBranchName(news.branch);
354
- const inheritedRoles = resolveInheritedRoles(news.inheritedRoles);
355
- const successor = resolveSuccessorName(news.successor);
356
- const desiredName = yield* resolveName(id, news.name);
357
-
358
- // 1. Observe — fetch live state if we know the role id. Roles
359
- // can only be looked up by id; without a cached id there is
360
- // no way to find the live role, so we fall through to ensure.
361
- const observed = output?.id
362
- ? yield* getRole({
363
- id: output.id,
364
- branch: branchName,
365
- organization,
366
- database: databaseName,
367
- }).pipe(
368
- Effect.catchTag("NotFound", () => Effect.succeed(undefined)),
369
- )
370
- : undefined;
371
-
372
- // 2. Ensure — create if missing. Single branch covers both
373
- // greenfield (no output) and out-of-band-deletion (output
374
- // cached but cloud lost it). The latter is structurally a
375
- // rotation: the new role has fresh id/host/username/plaintext
376
- // that propagate downstream through the dependency graph.
377
- // There is no path to recover the original plaintext, so
378
- // recreating is the only way to converge.
379
- //
380
- // Planetscale returns the plaintext password value exactly
381
- // once on create; on an observe-hit we re-use the cached
382
- // plaintext from output (which is why adoption requires
383
- // pre-existing state — see `read`).
384
- let live: ops.GetRoleOutput | ops.CreateRoleOutput;
385
- let plaintext: Redacted.Redacted<string>;
386
- if (observed) {
387
- live = observed;
388
- plaintext = output!.password;
389
- } else {
390
- const branchInfo = yield* getBranch({
391
- organization,
392
- database: databaseName,
393
- branch: branchName,
394
- });
395
- if (branchInfo.kind !== "postgresql") {
396
- return yield* Effect.fail(
397
- new PlanetscaleConflict({
398
- message: `Cannot create a Role on MySQL database "${databaseName}". Roles are only supported on PostgreSQL. Use Password for MySQL.`,
399
- }),
400
- );
401
- }
402
- if (!branchInfo.ready) {
403
- yield* waitForBranchReady(organization, databaseName, branchName);
404
- }
405
- const created = yield* createRole({
406
- name: desiredName,
407
- branch: branchName,
408
- organization,
409
- database: databaseName,
410
- ttl: news.ttl,
411
- inherited_roles: inheritedRoles as SDKInheritedRole[],
412
- });
413
- if (!created.password) {
414
- return yield* Effect.die(
415
- `Planetscale did not return a password for Role "${desiredName}".`,
416
- );
417
- }
418
- plaintext = created.password;
419
- live = created;
420
- }
421
-
422
- // 3. Sync — only `name` is mutable in place; diff observed
423
- // against desired and skip the API call when nothing
424
- // changed. Everything else triggers a replace via diff().
425
- if (live.name !== desiredName) {
426
- live = yield* updateRole({
427
- id: live.id,
428
- branch: branchName,
429
- organization,
430
- database: databaseName,
431
- name: desiredName,
432
- });
433
- }
434
-
435
- // 4. Return — fresh attrs sourced from observed cloud state,
436
- // with cached or freshly-issued plaintext.
437
- return buildAttributes(live, plaintext, {
438
- inheritedRoles: live.inherited_roles as InheritedRole[],
439
- successor,
440
- organization,
441
- database: databaseName,
442
- branch: branchName,
443
- });
444
- }),
445
-
446
- delete: Effect.fn(function* ({ output }) {
447
- yield* deleteRole({
448
- organization: output.organization,
449
- database: output.database,
450
- branch: output.branch,
451
- id: output.id,
452
- successor: output.successor,
453
- }).pipe(
454
- Effect.catchTag("NotFound", () => Effect.void),
455
- // 422 (UnprocessableEntity): role is still referenced. Log a
456
- // warning rather than failing — the role will be cleaned up
457
- // when the database/branch is deleted.
458
- Effect.catchIf(
459
- isKnownError(
460
- "UnprocessableEntity",
461
- "Role is still referenced and cannot be dropped.",
462
- ),
463
- () => Effect.void,
464
- ),
465
- );
466
- }),
467
- };
468
- }),
469
- );
@@ -3,7 +3,6 @@ import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient";
3
3
  import { CredentialsStoreLive } from "../Auth/Credentials.ts";
4
4
  import { ProfileLive } from "../Auth/Profile.ts";
5
5
  import * as Provider from "../Provider.ts";
6
- import type { StackServices } from "../Stack.ts";
7
6
  import { PlanetscaleAuth } from "./AuthProvider.ts";
8
7
  import * as Credentials from "./Credentials.ts";
9
8
  import { MySQLBranch, MySQLBranchProvider } from "./MySQL/MySQLBranch.ts";
@@ -43,11 +42,7 @@ export type ProviderRequirements = Layer.Services<ReturnType<typeof providers>>;
43
42
  * Effect.provide(Planetscale.providers())
44
43
  * ```
45
44
  */
46
- export const providers = (): Layer.Layer<
47
- Providers | Credentials.Credentials,
48
- never,
49
- StackServices
50
- > =>
45
+ export const providers = () =>
51
46
  Layer.effect(
52
47
  Providers,
53
48
  Provider.collection([
@@ -77,4 +72,4 @@ export const providers = (): Layer.Layer<
77
72
  Layer.provideMerge(ProfileLive),
78
73
  Layer.provideMerge(CredentialsStoreLive),
79
74
  Layer.orDie,
80
- ) as Layer.Layer<Providers | Credentials.Credentials, never, StackServices>;
75
+ );
@@ -12,7 +12,7 @@ export const DEFAULT_MIGRATIONS_TABLE = "__alchemy_migrations";
12
12
  * been reached. Used internally with `Effect.retry` to drive long-running
13
13
  * status waits.
14
14
  */
15
- class NotReady extends Data.TaggedError("Planetscale::NotReady")<{
15
+ export class NotReady extends Data.TaggedError("Planetscale::NotReady")<{
16
16
  description: string;
17
17
  }> {}
18
18
 
@@ -29,12 +29,14 @@ export class PlanetscaleConflict extends Data.TaggedError(
29
29
  }> {}
30
30
 
31
31
  /**
32
- * Default polling schedule: 5s spaced retries with a 10-minute total
33
- * budget (120 × 5s). Avoids the exponential-blowup trap where later
34
- * iterations would wait hours, indistinguishable from a hang.
32
+ * Default polling schedule: 5s spaced retries with a 30-minute total
33
+ * budget (360 × 5s). Avoids the exponential-blowup trap where later
34
+ * iterations would wait hours, indistinguishable from a hang. Postgres
35
+ * database creates routinely run 10-12 minutes, so a 10-minute budget
36
+ * regularly false-positives as "stuck".
35
37
  */
36
38
  const defaultSchedule = Schedule.spaced("5 seconds").pipe(
37
- Schedule.both(Schedule.recurs(120)),
39
+ Schedule.both(Schedule.recurs(360)),
38
40
  );
39
41
 
40
42
  /**
@@ -2,7 +2,7 @@ import * as Effect from "effect/Effect";
2
2
  import * as Layer from "effect/Layer";
3
3
  import * as Stream from "effect/Stream";
4
4
 
5
- import { Region } from "@distilled.cloud/aws/Region";
5
+ import { AWSEnvironment } from "../AWS/Environment.ts";
6
6
  import * as SQS from "../AWS/SQS/index.ts";
7
7
  import { ServerHost } from "./Process.ts";
8
8
 
@@ -10,7 +10,7 @@ export const SQSQueueEventSource = Layer.effect(
10
10
  SQS.QueueEventSource,
11
11
  Effect.gen(function* () {
12
12
  const { run } = yield* ServerHost;
13
- const region = yield* Region;
13
+ const env = yield* AWSEnvironment;
14
14
 
15
15
  const ReceiveMessage = yield* SQS.ReceiveMessage;
16
16
  const DeleteMessageBatch = yield* SQS.DeleteMessageBatch;
@@ -23,6 +23,7 @@ export const SQSQueueEventSource = Layer.effect(
23
23
  ) => Effect.Effect<void, never, Req | StreamReq>,
24
24
  ) {
25
25
  const QueueArn = yield* queue.queueArn;
26
+ const { region } = yield* env;
26
27
 
27
28
  const receiveMessage = yield* ReceiveMessage(queue);
28
29
  const deleteMessageBatch = yield* DeleteMessageBatch(queue);
package/src/Stack.ts CHANGED
@@ -16,7 +16,7 @@ import { AlchemyContext, AlchemyContextLive } from "./AlchemyContext.ts";
16
16
  import { provideFreshArtifactStore } from "./Artifacts.ts";
17
17
  import { AuthProviders } from "./Auth/AuthProvider.ts";
18
18
  import { CredentialsStore, CredentialsStoreLive } from "./Auth/Credentials.ts";
19
- import { Profile, ProfileLive } from "./Auth/Profile.ts";
19
+ import { AlchemyProfile, ProfileLive } from "./Auth/Profile.ts";
20
20
  import { Cli } from "./Cli/Cli.ts";
21
21
  import type { Input, InputProps } from "./Input.ts";
22
22
  import * as Output from "./Output.ts";
@@ -38,7 +38,7 @@ export type StackServices =
38
38
  | HttpClient
39
39
  | ChildProcessSpawner
40
40
  | AuthProviders
41
- | Profile
41
+ | AlchemyProfile
42
42
  | CredentialsStore
43
43
  | Cli;
44
44
 
@@ -51,7 +51,7 @@ export type StackEffect<A, Err = never, Req = never> = Effect.Effect<
51
51
  | AuthProviders
52
52
  | AlchemyContext
53
53
  | Cli
54
- | Profile
54
+ | AlchemyProfile
55
55
  | CredentialsStore
56
56
  | State
57
57
  | Req
package/bin/alchemy.sh DELETED
@@ -1,15 +0,0 @@
1
- #!/bin/sh
2
- # Auto-generated by scripts/hoist-alchemy-bin.ts. Do not edit.
3
- # Dev-only shim: runs alchemy.ts under bun, falls back to alchemy.js under node.
4
- RUNTIME=node
5
- case "$npm_execpath" in
6
- *bun*) RUNTIME=bun ;;
7
- esac
8
- if [ "$RUNTIME" = "node" ] && command -v bun >/dev/null 2>&1; then
9
- RUNTIME=bun
10
- fi
11
- if [ "$RUNTIME" = "bun" ]; then
12
- exec bun "/Users/samgoodwin/workspaces/alchemy-effect/packages/alchemy/bin/alchemy.ts" "$@"
13
- else
14
- exec node "/Users/samgoodwin/workspaces/alchemy-effect/packages/alchemy/bin/alchemy.js" "$@"
15
- fi
@@ -1,8 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as Layer from "effect/Layer";
3
- import { Credentials } from "@distilled.cloud/aws/Credentials";
4
- import { Region } from "@distilled.cloud/aws/Region";
5
- import { HttpClient } from "effect/unstable/http/HttpClient";
6
- export declare const withContext: <Input, A, Err = never, Req = never>(fn: (request: Input) => Effect.Effect<A, Err, Req>) => Effect.Effect<(request: Input) => Effect.Effect<A, Err, Exclude<Req, Credentials | Region | HttpClient>>, never, HttpClient | Region | Credentials>;
7
- export declare const context: () => Effect.Effect<Layer.Layer<HttpClient | Region | Credentials, never, never>, never, HttpClient | Region | Credentials>;
8
- //# sourceMappingURL=Context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/AWS/Context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,eAAO,MAAM,WAAW,GACtB,KAAK,EACL,CAAC,EACD,GAAG,UACH,GAAG,wBACW,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,6BAGvC,KAAK,KACb,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC,CAAC,2CAEzE,CAAC;AAEH,eAAO,MAAM,OAAO,6HASlB,CAAC"}
@@ -1,16 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as Layer from "effect/Layer";
3
- import { Credentials } from "@distilled.cloud/aws/Credentials";
4
- import { Region } from "@distilled.cloud/aws/Region";
5
- import { HttpClient } from "effect/unstable/http/HttpClient";
6
- export const withContext = Effect.fn(function* (fn) {
7
- const ctx = yield* context();
8
- return (request) => fn(request).pipe(Effect.provide(ctx));
9
- });
10
- export const context = Effect.fn(function* () {
11
- const credentials = yield* Credentials;
12
- const region = yield* Region;
13
- const httpClient = yield* HttpClient;
14
- return Layer.mergeAll(Layer.succeed(Credentials, credentials), Layer.succeed(Region, region), Layer.succeed(HttpClient, httpClient));
15
- });
16
- //# sourceMappingURL=Context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../src/AWS/Context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAK5C,EAAkD;IAClD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7B,OAAO,CACL,OAAc,EAC0D,EAAE,CAC1E,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;IACxC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC;IACrC,OAAO,KAAK,CAAC,QAAQ,CACnB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,EACvC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CACtC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- import * as Config from "effect/Config";
2
- import * as Context from "effect/Context";
3
- import * as Layer from "effect/Layer";
4
- import { Profile } from "../Auth/Profile.ts";
5
- import { type NeonResolvedCredentials } from "./AuthProvider.ts";
6
- declare const NeonEnvironment_base: Context.ServiceClass<NeonEnvironment, "Neon::NeonEnvironment", NeonResolvedCredentials>;
7
- export declare class NeonEnvironment extends NeonEnvironment_base {
8
- }
9
- export declare const fromProfile: () => Layer.Layer<NeonEnvironment, Config.ConfigError | import("effect/PlatformError").PlatformError | import("../Auth/AuthProvider.ts").AuthError, Profile | import("../index.ts").AuthProviders>;
10
- export {};
11
- //# sourceMappingURL=NeonEnvironment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NeonEnvironment.d.ts","sourceRoot":"","sources":["../../src/Neon/NeonEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAE1C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAmB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,mBAAmB,CAAC;;AAE3B,qBAAa,eAAgB,SAAQ,oBAGT;CAAG;AAE/B,eAAO,MAAM,WAAW,oMAcrB,CAAC"}
@@ -1,18 +0,0 @@
1
- import * as Config from "effect/Config";
2
- import * as Context from "effect/Context";
3
- import * as Effect from "effect/Effect";
4
- import * as Layer from "effect/Layer";
5
- import { getAuthProvider } from "../Auth/AuthProvider.js";
6
- import { ALCHEMY_PROFILE, Profile } from "../Auth/Profile.js";
7
- import { NEON_AUTH_PROVIDER_NAME, } from "./AuthProvider.js";
8
- export class NeonEnvironment extends Context.Service()("Neon::NeonEnvironment") {
9
- }
10
- export const fromProfile = () => Layer.effect(NeonEnvironment, Effect.gen(function* () {
11
- const profile = yield* Profile;
12
- const auth = yield* getAuthProvider(NEON_AUTH_PROVIDER_NAME);
13
- const profileName = yield* ALCHEMY_PROFILE;
14
- const ci = yield* Config.boolean("CI").pipe(Config.withDefault(false));
15
- const config = yield* profile.loadOrConfigure(auth, profileName, { ci });
16
- return yield* auth.read(profileName, config);
17
- }));
18
- //# sourceMappingURL=NeonEnvironment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NeonEnvironment.js","sourceRoot":"","sources":["../../src/Neon/NeonEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,uBAAuB,GAGxB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,eAAgB,SAAQ,OAAO,CAAC,OAAO,EAGjD,CAAC,uBAAuB,CAAC;CAAG;AAE/B,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAC9B,KAAK,CAAC,MAAM,CACV,eAAe,EACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;IAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,eAAe,CAGjC,uBAAuB,CAAC,CAAC;IAC3B,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC;IAC3C,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAwB,CAAC,CAAC;AACjE,CAAC,CAAC,CACH,CAAC"}
@@ -1,30 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as Layer from "effect/Layer";
3
-
4
- import { Credentials } from "@distilled.cloud/aws/Credentials";
5
- import { Region } from "@distilled.cloud/aws/Region";
6
- import { HttpClient } from "effect/unstable/http/HttpClient";
7
-
8
- export const withContext = Effect.fn(function* <
9
- Input,
10
- A,
11
- Err = never,
12
- Req = never,
13
- >(fn: (request: Input) => Effect.Effect<A, Err, Req>) {
14
- const ctx = yield* context();
15
- return (
16
- request: Input,
17
- ): Effect.Effect<A, Err, Exclude<Req, Credentials | Region | HttpClient>> =>
18
- fn(request).pipe(Effect.provide(ctx));
19
- });
20
-
21
- export const context = Effect.fn(function* () {
22
- const credentials = yield* Credentials;
23
- const region = yield* Region;
24
- const httpClient = yield* HttpClient;
25
- return Layer.mergeAll(
26
- Layer.succeed(Credentials, credentials),
27
- Layer.succeed(Region, region),
28
- Layer.succeed(HttpClient, httpClient),
29
- );
30
- });
@@ -1,32 +0,0 @@
1
- import * as Config from "effect/Config";
2
- import * as Context from "effect/Context";
3
- import * as Effect from "effect/Effect";
4
- import * as Layer from "effect/Layer";
5
- import { getAuthProvider } from "../Auth/AuthProvider.ts";
6
- import { ALCHEMY_PROFILE, Profile } from "../Auth/Profile.ts";
7
- import {
8
- NEON_AUTH_PROVIDER_NAME,
9
- type NeonAuthConfig,
10
- type NeonResolvedCredentials,
11
- } from "./AuthProvider.ts";
12
-
13
- export class NeonEnvironment extends Context.Service<
14
- NeonEnvironment,
15
- NeonResolvedCredentials
16
- >()("Neon::NeonEnvironment") {}
17
-
18
- export const fromProfile = () =>
19
- Layer.effect(
20
- NeonEnvironment,
21
- Effect.gen(function* () {
22
- const profile = yield* Profile;
23
- const auth = yield* getAuthProvider<
24
- NeonAuthConfig,
25
- NeonResolvedCredentials
26
- >(NEON_AUTH_PROVIDER_NAME);
27
- const profileName = yield* ALCHEMY_PROFILE;
28
- const ci = yield* Config.boolean("CI").pipe(Config.withDefault(false));
29
- const config = yield* profile.loadOrConfigure(auth, profileName, { ci });
30
- return yield* auth.read(profileName, config as NeonAuthConfig);
31
- }),
32
- );