@aws/agentcore 1.0.0-preview.2 → 1.0.0-preview.20

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 (256) hide show
  1. package/README.md +193 -33
  2. package/dist/agent-inspector/index.css +1 -1
  3. package/dist/agent-inspector/index.js +99 -84
  4. package/dist/assets/__tests__/__snapshots__/assets.snapshot.test.ts.snap +3132 -366
  5. package/dist/assets/__tests__/__snapshots__/dockerfile-render.test.ts.snap +6 -2
  6. package/dist/assets/__tests__/assets.snapshot.test.ts +10 -24
  7. package/dist/assets/__tests__/googleadk-session-eviction.test.ts +87 -0
  8. package/dist/assets/__tests__/summarization-namespace.test.ts +43 -0
  9. package/dist/assets/agents/AGENTS.md +87 -11
  10. package/dist/assets/cdk/bin/cdk.ts +87 -26
  11. package/dist/assets/cdk/lib/cdk-stack.ts +185 -55
  12. package/dist/assets/cdk/package.json +1 -1
  13. package/dist/assets/cdk/test/cdk.test.ts +4 -0
  14. package/dist/assets/container/python/Dockerfile +7 -1
  15. package/dist/assets/container/typescript/Dockerfile +25 -0
  16. package/dist/assets/container/typescript/dockerignore.template +24 -0
  17. package/dist/assets/datasets/predefined-v1.jsonl +3 -0
  18. package/dist/assets/datasets/simulated-v1.jsonl +3 -0
  19. package/dist/assets/python/a2a/googleadk/base/main.py +24 -16
  20. package/dist/assets/python/a2a/googleadk/base/pyproject.toml +3 -3
  21. package/dist/assets/python/a2a/langchain_langgraph/base/main.py +24 -16
  22. package/dist/assets/python/a2a/langchain_langgraph/base/pyproject.toml +3 -2
  23. package/dist/assets/python/a2a/strands/base/main.py +23 -17
  24. package/dist/assets/python/a2a/strands/base/pyproject.toml +2 -2
  25. package/dist/assets/python/a2a/strands/capabilities/memory/session.py +10 -2
  26. package/dist/assets/python/agui/googleadk/base/main.py +62 -2
  27. package/dist/assets/python/agui/googleadk/base/pyproject.toml +3 -3
  28. package/dist/assets/python/agui/langchain_langgraph/base/main.py +56 -0
  29. package/dist/assets/python/agui/langchain_langgraph/base/pyproject.toml +2 -1
  30. package/dist/assets/python/agui/strands/base/main.py +63 -1
  31. package/dist/assets/python/agui/strands/base/pyproject.toml +1 -1
  32. package/dist/assets/python/agui/strands/capabilities/memory/session.py +10 -2
  33. package/dist/assets/python/http/autogen/base/main.py +60 -29
  34. package/dist/assets/python/http/autogen/base/pyproject.toml +1 -1
  35. package/dist/assets/python/http/googleadk/base/main.py +69 -24
  36. package/dist/assets/python/http/googleadk/base/mcp_client/client.py +7 -7
  37. package/dist/assets/python/http/googleadk/base/pyproject.toml +2 -1
  38. package/dist/assets/python/http/langchain_langgraph/base/main.py +115 -24
  39. package/dist/assets/python/http/langchain_langgraph/base/mcp_client/client.py +10 -8
  40. package/dist/assets/python/http/langchain_langgraph/base/pyproject.toml +3 -2
  41. package/dist/assets/python/http/openaiagents/base/main.py +61 -32
  42. package/dist/assets/python/http/openaiagents/base/mcp_client/client.py +4 -4
  43. package/dist/assets/python/http/openaiagents/base/pyproject.toml +2 -2
  44. package/dist/assets/python/http/strands/base/main.py +571 -47
  45. package/dist/assets/python/http/strands/base/mcp_client/client.py +49 -6
  46. package/dist/assets/python/http/strands/base/model/load.py +119 -3
  47. package/dist/assets/python/http/strands/base/model/mantle_compat.py +21 -0
  48. package/dist/assets/python/http/strands/base/pyproject.toml +9 -3
  49. package/dist/assets/python/http/strands/base/skills/fetcher.py +279 -0
  50. package/dist/assets/python/http/strands/capabilities/execution-limits/hooks/execution_limits.py +54 -0
  51. package/dist/assets/python/http/strands/capabilities/memory/session.py +10 -2
  52. package/dist/assets/python/http/strands/capabilities/payments/__init__.py +4 -0
  53. package/dist/assets/python/http/strands/capabilities/payments/payments.py +142 -0
  54. package/dist/assets/python/mcp/standalone/base/main.py +58 -0
  55. package/dist/assets/typescript/http/strands/base/README.md +37 -0
  56. package/dist/assets/typescript/http/strands/base/gitignore.template +22 -0
  57. package/dist/assets/typescript/http/strands/base/main.ts +144 -0
  58. package/dist/assets/typescript/http/strands/base/mcp_client/client.ts +11 -0
  59. package/dist/assets/typescript/http/strands/base/model/load.ts +102 -0
  60. package/dist/assets/typescript/http/strands/base/package.json +38 -0
  61. package/dist/assets/typescript/http/strands/base/tsconfig.json +19 -0
  62. package/dist/assets/typescript/http/strands/capabilities/memory/memory.ts +52 -0
  63. package/dist/assets/typescript/http/vercelai/base/README.md +37 -0
  64. package/dist/assets/typescript/http/vercelai/base/gitignore.template +22 -0
  65. package/dist/assets/typescript/http/vercelai/base/main.ts +64 -0
  66. package/dist/assets/typescript/http/vercelai/base/model/load.ts +121 -0
  67. package/dist/assets/typescript/http/vercelai/base/package.json +35 -0
  68. package/dist/assets/typescript/http/vercelai/base/tsconfig.json +19 -0
  69. package/dist/cli/index.mjs +1416 -568
  70. package/dist/lib/errors/index.d.ts +1 -1
  71. package/dist/lib/errors/index.d.ts.map +1 -1
  72. package/dist/lib/errors/index.js +1 -1
  73. package/dist/lib/errors/index.js.map +1 -1
  74. package/dist/lib/errors/types.d.ts +259 -0
  75. package/dist/lib/errors/types.d.ts.map +1 -0
  76. package/dist/lib/errors/types.js +402 -0
  77. package/dist/lib/errors/types.js.map +1 -0
  78. package/dist/lib/errors/zod.d.ts +8 -0
  79. package/dist/lib/errors/zod.d.ts.map +1 -0
  80. package/dist/lib/errors/{config.js → zod.js} +8 -81
  81. package/dist/lib/errors/zod.js.map +1 -0
  82. package/dist/lib/index.d.ts +3 -0
  83. package/dist/lib/index.d.ts.map +1 -1
  84. package/dist/lib/index.js +4 -1
  85. package/dist/lib/index.js.map +1 -1
  86. package/dist/lib/packaging/build-args.js +2 -2
  87. package/dist/lib/packaging/build-args.js.map +1 -1
  88. package/dist/lib/packaging/container.js +5 -5
  89. package/dist/lib/packaging/container.js.map +1 -1
  90. package/dist/lib/packaging/helpers.d.ts +16 -0
  91. package/dist/lib/packaging/helpers.d.ts.map +1 -1
  92. package/dist/lib/packaging/helpers.js +127 -29
  93. package/dist/lib/packaging/helpers.js.map +1 -1
  94. package/dist/lib/packaging/index.d.ts +0 -1
  95. package/dist/lib/packaging/index.d.ts.map +1 -1
  96. package/dist/lib/packaging/index.js +4 -19
  97. package/dist/lib/packaging/index.js.map +1 -1
  98. package/dist/lib/packaging/node.d.ts +2 -2
  99. package/dist/lib/packaging/node.d.ts.map +1 -1
  100. package/dist/lib/packaging/node.js +83 -38
  101. package/dist/lib/packaging/node.js.map +1 -1
  102. package/dist/lib/packaging/python.js +12 -12
  103. package/dist/lib/packaging/python.js.map +1 -1
  104. package/dist/lib/result.d.ts +50 -0
  105. package/dist/lib/result.d.ts.map +1 -0
  106. package/dist/lib/result.js +49 -0
  107. package/dist/lib/result.js.map +1 -0
  108. package/dist/lib/schemas/io/config-io.d.ts +8 -0
  109. package/dist/lib/schemas/io/config-io.d.ts.map +1 -1
  110. package/dist/lib/schemas/io/config-io.js +21 -3
  111. package/dist/lib/schemas/io/config-io.js.map +1 -1
  112. package/dist/lib/schemas/io/global-config.d.ts +40 -0
  113. package/dist/lib/schemas/io/global-config.d.ts.map +1 -0
  114. package/dist/lib/schemas/io/global-config.js +118 -0
  115. package/dist/lib/schemas/io/global-config.js.map +1 -0
  116. package/dist/lib/schemas/io/index.d.ts +1 -2
  117. package/dist/lib/schemas/io/index.d.ts.map +1 -1
  118. package/dist/lib/schemas/io/index.js +1 -4
  119. package/dist/lib/schemas/io/index.js.map +1 -1
  120. package/dist/lib/schemas/io/path-resolver.d.ts +0 -6
  121. package/dist/lib/schemas/io/path-resolver.d.ts.map +1 -1
  122. package/dist/lib/schemas/io/path-resolver.js +3 -13
  123. package/dist/lib/schemas/io/path-resolver.js.map +1 -1
  124. package/dist/lib/secrets/cipher.d.ts +12 -0
  125. package/dist/lib/secrets/cipher.d.ts.map +1 -0
  126. package/dist/lib/secrets/cipher.js +54 -0
  127. package/dist/lib/secrets/cipher.js.map +1 -0
  128. package/dist/lib/secrets/index.d.ts +4 -0
  129. package/dist/lib/secrets/index.d.ts.map +1 -0
  130. package/dist/lib/secrets/index.js +15 -0
  131. package/dist/lib/secrets/index.js.map +1 -0
  132. package/dist/lib/secrets/key-provider.d.ts +16 -0
  133. package/dist/lib/secrets/key-provider.d.ts.map +1 -0
  134. package/dist/lib/secrets/key-provider.js +191 -0
  135. package/dist/lib/secrets/key-provider.js.map +1 -0
  136. package/dist/lib/secrets/sensitive-keys.d.ts +21 -0
  137. package/dist/lib/secrets/sensitive-keys.d.ts.map +1 -0
  138. package/dist/lib/secrets/sensitive-keys.js +67 -0
  139. package/dist/lib/secrets/sensitive-keys.js.map +1 -0
  140. package/dist/lib/time-constants.d.ts +5 -0
  141. package/dist/lib/time-constants.d.ts.map +1 -0
  142. package/dist/lib/time-constants.js +8 -0
  143. package/dist/lib/time-constants.js.map +1 -0
  144. package/dist/lib/utils/env.d.ts +8 -2
  145. package/dist/lib/utils/env.d.ts.map +1 -1
  146. package/dist/lib/utils/env.js +65 -17
  147. package/dist/lib/utils/env.js.map +1 -1
  148. package/dist/lib/utils/index.d.ts +3 -2
  149. package/dist/lib/utils/index.d.ts.map +1 -1
  150. package/dist/lib/utils/index.js +6 -1
  151. package/dist/lib/utils/index.js.map +1 -1
  152. package/dist/lib/utils/polling.d.ts +31 -0
  153. package/dist/lib/utils/polling.d.ts.map +1 -0
  154. package/dist/lib/utils/polling.js +61 -0
  155. package/dist/lib/utils/polling.js.map +1 -0
  156. package/dist/lib/utils/zod.d.ts +16 -0
  157. package/dist/lib/utils/zod.d.ts.map +1 -1
  158. package/dist/lib/utils/zod.js +45 -0
  159. package/dist/lib/utils/zod.js.map +1 -1
  160. package/dist/schema/constants.d.ts +56 -2
  161. package/dist/schema/constants.d.ts.map +1 -1
  162. package/dist/schema/constants.js +82 -7
  163. package/dist/schema/constants.js.map +1 -1
  164. package/dist/schema/schemas/agent-env.d.ts +156 -6
  165. package/dist/schema/schemas/agent-env.d.ts.map +1 -1
  166. package/dist/schema/schemas/agent-env.js +186 -13
  167. package/dist/schema/schemas/agent-env.js.map +1 -1
  168. package/dist/schema/schemas/agentcore-project.d.ts +446 -11
  169. package/dist/schema/schemas/agentcore-project.d.ts.map +1 -1
  170. package/dist/schema/schemas/agentcore-project.js +283 -18
  171. package/dist/schema/schemas/agentcore-project.js.map +1 -1
  172. package/dist/schema/schemas/auth.d.ts +174 -0
  173. package/dist/schema/schemas/auth.d.ts.map +1 -1
  174. package/dist/schema/schemas/auth.js +127 -3
  175. package/dist/schema/schemas/auth.js.map +1 -1
  176. package/dist/schema/schemas/connections.d.ts +185 -0
  177. package/dist/schema/schemas/connections.d.ts.map +1 -0
  178. package/dist/schema/schemas/connections.js +176 -0
  179. package/dist/schema/schemas/connections.js.map +1 -0
  180. package/dist/schema/schemas/deployed-state.d.ts +361 -5
  181. package/dist/schema/schemas/deployed-state.d.ts.map +1 -1
  182. package/dist/schema/schemas/deployed-state.js +105 -2
  183. package/dist/schema/schemas/deployed-state.js.map +1 -1
  184. package/dist/schema/schemas/index.d.ts +1 -0
  185. package/dist/schema/schemas/index.d.ts.map +1 -1
  186. package/dist/schema/schemas/index.js +1 -0
  187. package/dist/schema/schemas/index.js.map +1 -1
  188. package/dist/schema/schemas/mcp-defs.d.ts +2 -1
  189. package/dist/schema/schemas/mcp-defs.d.ts.map +1 -1
  190. package/dist/schema/schemas/mcp-defs.js +3 -2
  191. package/dist/schema/schemas/mcp-defs.js.map +1 -1
  192. package/dist/schema/schemas/mcp.d.ts +197 -0
  193. package/dist/schema/schemas/mcp.d.ts.map +1 -1
  194. package/dist/schema/schemas/mcp.js +342 -6
  195. package/dist/schema/schemas/mcp.js.map +1 -1
  196. package/dist/schema/schemas/primitives/ab-test.d.ts +135 -0
  197. package/dist/schema/schemas/primitives/ab-test.d.ts.map +1 -0
  198. package/dist/schema/schemas/primitives/ab-test.js +95 -0
  199. package/dist/schema/schemas/primitives/ab-test.js.map +1 -0
  200. package/dist/schema/schemas/primitives/config-bundle.d.ts +32 -0
  201. package/dist/schema/schemas/primitives/config-bundle.d.ts.map +1 -0
  202. package/dist/schema/schemas/primitives/config-bundle.js +41 -0
  203. package/dist/schema/schemas/primitives/config-bundle.js.map +1 -0
  204. package/dist/schema/schemas/primitives/dataset.d.ts +48 -0
  205. package/dist/schema/schemas/primitives/dataset.d.ts.map +1 -0
  206. package/dist/schema/schemas/primitives/dataset.js +58 -0
  207. package/dist/schema/schemas/primitives/dataset.js.map +1 -0
  208. package/dist/schema/schemas/primitives/evaluator.d.ts +8 -0
  209. package/dist/schema/schemas/primitives/evaluator.d.ts.map +1 -1
  210. package/dist/schema/schemas/primitives/evaluator.js +17 -1
  211. package/dist/schema/schemas/primitives/evaluator.js.map +1 -1
  212. package/dist/schema/schemas/primitives/harness.d.ts +377 -19
  213. package/dist/schema/schemas/primitives/harness.d.ts.map +1 -1
  214. package/dist/schema/schemas/primitives/harness.js +379 -24
  215. package/dist/schema/schemas/primitives/harness.js.map +1 -1
  216. package/dist/schema/schemas/primitives/index.d.ts +13 -7
  217. package/dist/schema/schemas/primitives/index.d.ts.map +1 -1
  218. package/dist/schema/schemas/primitives/index.js +37 -1
  219. package/dist/schema/schemas/primitives/index.js.map +1 -1
  220. package/dist/schema/schemas/primitives/knowledge-base.d.ts +104 -0
  221. package/dist/schema/schemas/primitives/knowledge-base.d.ts.map +1 -0
  222. package/dist/schema/schemas/primitives/knowledge-base.js +99 -0
  223. package/dist/schema/schemas/primitives/knowledge-base.js.map +1 -0
  224. package/dist/schema/schemas/primitives/memory.d.ts +22 -4
  225. package/dist/schema/schemas/primitives/memory.d.ts.map +1 -1
  226. package/dist/schema/schemas/primitives/memory.js +57 -16
  227. package/dist/schema/schemas/primitives/memory.js.map +1 -1
  228. package/dist/schema/schemas/primitives/online-eval-config.d.ts +21 -2
  229. package/dist/schema/schemas/primitives/online-eval-config.d.ts.map +1 -1
  230. package/dist/schema/schemas/primitives/online-eval-config.js +45 -5
  231. package/dist/schema/schemas/primitives/online-eval-config.js.map +1 -1
  232. package/dist/schema/schemas/primitives/payment.d.ts +54 -0
  233. package/dist/schema/schemas/primitives/payment.d.ts.map +1 -0
  234. package/dist/schema/schemas/primitives/payment.js +79 -0
  235. package/dist/schema/schemas/primitives/payment.js.map +1 -0
  236. package/dist/schema/schemas/primitives/policy.d.ts +26 -0
  237. package/dist/schema/schemas/primitives/policy.d.ts.map +1 -1
  238. package/dist/schema/schemas/primitives/policy.js +5 -1
  239. package/dist/schema/schemas/primitives/policy.js.map +1 -1
  240. package/npm-shrinkwrap.json +17013 -0
  241. package/package.json +43 -21
  242. package/scripts/bump-version.ts +4 -4
  243. package/scripts/bundle.mjs +70 -41
  244. package/scripts/run-e2e-dev.sh +56 -0
  245. package/scripts/run-e2e-local.sh +145 -0
  246. package/dist/lib/errors/config.d.ts +0 -49
  247. package/dist/lib/errors/config.d.ts.map +0 -1
  248. package/dist/lib/errors/config.js.map +0 -1
  249. package/dist/lib/packaging/errors.d.ts +0 -16
  250. package/dist/lib/packaging/errors.d.ts.map +0 -1
  251. package/dist/lib/packaging/errors.js +0 -36
  252. package/dist/lib/packaging/errors.js.map +0 -1
  253. package/dist/lib/schemas/io/cli-config.d.ts +0 -12
  254. package/dist/lib/schemas/io/cli-config.d.ts.map +0 -1
  255. package/dist/lib/schemas/io/cli-config.js +0 -35
  256. package/dist/lib/schemas/io/cli-config.js.map +0 -1
@@ -1,4 +1,6 @@
1
+ import { SECURITY_GROUP_ID_PATTERN, SUBNET_ID_PATTERN, VPC_ID_PATTERN } from '../constants';
1
2
  import { z } from 'zod';
3
+ export { SECURITY_GROUP_ID_PATTERN, SUBNET_ID_PATTERN, VPC_ID_PATTERN };
2
4
  export declare const GatewayAuthorizerTypeSchema: z.ZodEnum<{
3
5
  NONE: "NONE";
4
6
  AWS_IAM: "AWS_IAM";
@@ -45,6 +47,73 @@ export declare const CustomClaimValidationSchema: z.ZodObject<{
45
47
  }, z.core.$strip>;
46
48
  }, z.core.$strict>;
47
49
  export type CustomClaimValidation = z.infer<typeof CustomClaimValidationSchema>;
50
+ export declare const LATTICE_RESOURCE_CONFIG_PATTERN: RegExp;
51
+ export declare const EndpointIpAddressTypeSchema: z.ZodEnum<{
52
+ IPV4: "IPV4";
53
+ IPV6: "IPV6";
54
+ }>;
55
+ export type EndpointIpAddressType = z.infer<typeof EndpointIpAddressTypeSchema>;
56
+ /** Reach the discovery endpoint via a self-managed VPC Lattice resource configuration. */
57
+ export declare const SelfManagedLatticeResourceSchema: z.ZodObject<{
58
+ resourceConfigurationIdentifier: z.ZodString;
59
+ }, z.core.$strict>;
60
+ export type SelfManagedLatticeResource = z.infer<typeof SelfManagedLatticeResourceSchema>;
61
+ /** Reach the discovery endpoint via a service-managed VPC interface endpoint. */
62
+ export declare const ManagedVpcResourceSchema: z.ZodObject<{
63
+ vpcIdentifier: z.ZodString;
64
+ subnetIds: z.ZodArray<z.ZodString>;
65
+ endpointIpAddressType: z.ZodEnum<{
66
+ IPV4: "IPV4";
67
+ IPV6: "IPV6";
68
+ }>;
69
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
70
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
71
+ routingDomain: z.ZodOptional<z.ZodString>;
72
+ }, z.core.$strict>;
73
+ export type ManagedVpcResource = z.infer<typeof ManagedVpcResourceSchema>;
74
+ /**
75
+ * A private endpoint: exactly one of selfManagedLatticeResource or managedVpcResource.
76
+ * The CFN spec dropped `oneOf` (contract-test antipattern) and enforces exactly-one structurally;
77
+ * we mirror that with a superRefine rather than a discriminated union.
78
+ */
79
+ export declare const PrivateEndpointSchema: z.ZodObject<{
80
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
81
+ resourceConfigurationIdentifier: z.ZodString;
82
+ }, z.core.$strict>>;
83
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
84
+ vpcIdentifier: z.ZodString;
85
+ subnetIds: z.ZodArray<z.ZodString>;
86
+ endpointIpAddressType: z.ZodEnum<{
87
+ IPV4: "IPV4";
88
+ IPV6: "IPV6";
89
+ }>;
90
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
91
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
92
+ routingDomain: z.ZodOptional<z.ZodString>;
93
+ }, z.core.$strict>>;
94
+ }, z.core.$strict>;
95
+ export type PrivateEndpoint = z.infer<typeof PrivateEndpointSchema>;
96
+ /** Maps a specific domain to its own private endpoint (overrides the discovery-URL endpoint for that domain). */
97
+ export declare const PrivateEndpointOverrideSchema: z.ZodObject<{
98
+ domain: z.ZodString;
99
+ privateEndpoint: z.ZodObject<{
100
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
101
+ resourceConfigurationIdentifier: z.ZodString;
102
+ }, z.core.$strict>>;
103
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
104
+ vpcIdentifier: z.ZodString;
105
+ subnetIds: z.ZodArray<z.ZodString>;
106
+ endpointIpAddressType: z.ZodEnum<{
107
+ IPV4: "IPV4";
108
+ IPV6: "IPV6";
109
+ }>;
110
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
111
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
112
+ routingDomain: z.ZodOptional<z.ZodString>;
113
+ }, z.core.$strict>>;
114
+ }, z.core.$strict>;
115
+ }, z.core.$strict>;
116
+ export type PrivateEndpointOverride = z.infer<typeof PrivateEndpointOverrideSchema>;
48
117
  /**
49
118
  * Custom JWT authorizer configuration.
50
119
  * Used when authorizerType is 'CUSTOM_JWT'.
@@ -75,6 +144,41 @@ export declare const CustomJwtAuthorizerConfigSchema: z.ZodObject<{
75
144
  }, z.core.$strip>;
76
145
  }, z.core.$strip>;
77
146
  }, z.core.$strict>>>;
147
+ privateEndpoint: z.ZodOptional<z.ZodObject<{
148
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
149
+ resourceConfigurationIdentifier: z.ZodString;
150
+ }, z.core.$strict>>;
151
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
152
+ vpcIdentifier: z.ZodString;
153
+ subnetIds: z.ZodArray<z.ZodString>;
154
+ endpointIpAddressType: z.ZodEnum<{
155
+ IPV4: "IPV4";
156
+ IPV6: "IPV6";
157
+ }>;
158
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
159
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
160
+ routingDomain: z.ZodOptional<z.ZodString>;
161
+ }, z.core.$strict>>;
162
+ }, z.core.$strict>>;
163
+ privateEndpointOverrides: z.ZodOptional<z.ZodArray<z.ZodObject<{
164
+ domain: z.ZodString;
165
+ privateEndpoint: z.ZodObject<{
166
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
167
+ resourceConfigurationIdentifier: z.ZodString;
168
+ }, z.core.$strict>>;
169
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
170
+ vpcIdentifier: z.ZodString;
171
+ subnetIds: z.ZodArray<z.ZodString>;
172
+ endpointIpAddressType: z.ZodEnum<{
173
+ IPV4: "IPV4";
174
+ IPV6: "IPV6";
175
+ }>;
176
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
177
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
178
+ routingDomain: z.ZodOptional<z.ZodString>;
179
+ }, z.core.$strict>>;
180
+ }, z.core.$strict>;
181
+ }, z.core.$strict>>>;
78
182
  }, z.core.$strict>;
79
183
  export type CustomJwtAuthorizerConfig = z.infer<typeof CustomJwtAuthorizerConfigSchema>;
80
184
  /**
@@ -105,6 +209,41 @@ export declare const AuthorizerConfigSchema: z.ZodObject<{
105
209
  }, z.core.$strip>;
106
210
  }, z.core.$strip>;
107
211
  }, z.core.$strict>>>;
212
+ privateEndpoint: z.ZodOptional<z.ZodObject<{
213
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
214
+ resourceConfigurationIdentifier: z.ZodString;
215
+ }, z.core.$strict>>;
216
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
217
+ vpcIdentifier: z.ZodString;
218
+ subnetIds: z.ZodArray<z.ZodString>;
219
+ endpointIpAddressType: z.ZodEnum<{
220
+ IPV4: "IPV4";
221
+ IPV6: "IPV6";
222
+ }>;
223
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
224
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
225
+ routingDomain: z.ZodOptional<z.ZodString>;
226
+ }, z.core.$strict>>;
227
+ }, z.core.$strict>>;
228
+ privateEndpointOverrides: z.ZodOptional<z.ZodArray<z.ZodObject<{
229
+ domain: z.ZodString;
230
+ privateEndpoint: z.ZodObject<{
231
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
232
+ resourceConfigurationIdentifier: z.ZodString;
233
+ }, z.core.$strict>>;
234
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
235
+ vpcIdentifier: z.ZodString;
236
+ subnetIds: z.ZodArray<z.ZodString>;
237
+ endpointIpAddressType: z.ZodEnum<{
238
+ IPV4: "IPV4";
239
+ IPV6: "IPV6";
240
+ }>;
241
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
242
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
243
+ routingDomain: z.ZodOptional<z.ZodString>;
244
+ }, z.core.$strict>>;
245
+ }, z.core.$strict>;
246
+ }, z.core.$strict>>>;
108
247
  }, z.core.$strict>>;
109
248
  }, z.core.$strip>;
110
249
  export type AuthorizerConfig = z.infer<typeof AuthorizerConfigSchema>;
@@ -133,6 +272,41 @@ export declare const GatewayAuthorizerConfigSchema: z.ZodObject<{
133
272
  }, z.core.$strip>;
134
273
  }, z.core.$strip>;
135
274
  }, z.core.$strict>>>;
275
+ privateEndpoint: z.ZodOptional<z.ZodObject<{
276
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
277
+ resourceConfigurationIdentifier: z.ZodString;
278
+ }, z.core.$strict>>;
279
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
280
+ vpcIdentifier: z.ZodString;
281
+ subnetIds: z.ZodArray<z.ZodString>;
282
+ endpointIpAddressType: z.ZodEnum<{
283
+ IPV4: "IPV4";
284
+ IPV6: "IPV6";
285
+ }>;
286
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
287
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
288
+ routingDomain: z.ZodOptional<z.ZodString>;
289
+ }, z.core.$strict>>;
290
+ }, z.core.$strict>>;
291
+ privateEndpointOverrides: z.ZodOptional<z.ZodArray<z.ZodObject<{
292
+ domain: z.ZodString;
293
+ privateEndpoint: z.ZodObject<{
294
+ selfManagedLatticeResource: z.ZodOptional<z.ZodObject<{
295
+ resourceConfigurationIdentifier: z.ZodString;
296
+ }, z.core.$strict>>;
297
+ managedVpcResource: z.ZodOptional<z.ZodObject<{
298
+ vpcIdentifier: z.ZodString;
299
+ subnetIds: z.ZodArray<z.ZodString>;
300
+ endpointIpAddressType: z.ZodEnum<{
301
+ IPV4: "IPV4";
302
+ IPV6: "IPV6";
303
+ }>;
304
+ securityGroupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
305
+ tags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
306
+ routingDomain: z.ZodOptional<z.ZodString>;
307
+ }, z.core.$strict>>;
308
+ }, z.core.$strict>;
309
+ }, z.core.$strict>>>;
136
310
  }, z.core.$strict>>;
137
311
  }, z.core.$strip>;
138
312
  /** @deprecated Use AuthorizerConfig. Backwards-compatible alias for Gateway. */
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/schema/schemas/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,2BAA2B;;;;EAA4C,CAAC;AACrF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,eAAO,MAAM,2BAA2B;;;EAAoC,CAAC;AAC7E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AA4BhF,eAAO,MAAM,wBAAwB;;;;EAAiD,CAAC;AACvF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,qBAAqB;;;iBAmB9B,CAAC;AACL,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,gCAAgC;;;EAAqC,CAAC;AACnF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;kBAgB7B,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAIhF;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;kBA0BxC,CAAC;AAEL,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;iBAEjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,sFAAsF;AACtF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyB,CAAC;AACpE,gFAAgF;AAChF,MAAM,MAAM,uBAAuB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/schema/schemas/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE5F,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC;AAMxE,eAAO,MAAM,2BAA2B;;;;EAA4C,CAAC;AACrF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,eAAO,MAAM,2BAA2B;;;EAAoC,CAAC;AAC7E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AA+BhF,eAAO,MAAM,wBAAwB;;;;EAAiD,CAAC;AACvF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,qBAAqB;;;iBAmB9B,CAAC;AACL,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,gCAAgC;;;EAAqC,CAAC;AACnF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;kBAgB7B,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAWhF,eAAO,MAAM,+BAA+B,QAC0E,CAAC;AAEvH,eAAO,MAAM,2BAA2B;;;EAA2B,CAAC;AACpE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,0FAA0F;AAC1F,eAAO,MAAM,gCAAgC;;kBAQlC,CAAC;AACZ,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,iFAAiF;AACjF,eAAO,MAAM,wBAAwB;;;;;;;;;;kBAY1B,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;kBAc9B,CAAC;AACL,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,iHAAiH;AACjH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;kBAK/B,CAAC;AACZ,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAepF;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8ExC,CAAC;AAEL,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,sFAAsF;AACtF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAyB,CAAC;AACpE,gFAAgF;AAChF,MAAM,MAAM,uBAAuB,GAAG,gBAAgB,CAAC"}
@@ -1,6 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GatewayAuthorizerConfigSchema = exports.AuthorizerConfigSchema = exports.CustomJwtAuthorizerConfigSchema = exports.CustomClaimValidationSchema = exports.InboundTokenClaimValueTypeSchema = exports.ClaimMatchValueSchema = exports.ClaimMatchOperatorSchema = exports.RuntimeAuthorizerTypeSchema = exports.GatewayAuthorizerTypeSchema = void 0;
3
+ exports.GatewayAuthorizerConfigSchema = exports.AuthorizerConfigSchema = exports.CustomJwtAuthorizerConfigSchema = exports.PrivateEndpointOverrideSchema = exports.PrivateEndpointSchema = exports.ManagedVpcResourceSchema = exports.SelfManagedLatticeResourceSchema = exports.EndpointIpAddressTypeSchema = exports.LATTICE_RESOURCE_CONFIG_PATTERN = exports.CustomClaimValidationSchema = exports.InboundTokenClaimValueTypeSchema = exports.ClaimMatchValueSchema = exports.ClaimMatchOperatorSchema = exports.RuntimeAuthorizerTypeSchema = exports.GatewayAuthorizerTypeSchema = exports.VPC_ID_PATTERN = exports.SUBNET_ID_PATTERN = exports.SECURITY_GROUP_ID_PATTERN = void 0;
4
+ const constants_1 = require("../constants");
5
+ Object.defineProperty(exports, "SECURITY_GROUP_ID_PATTERN", { enumerable: true, get: function () { return constants_1.SECURITY_GROUP_ID_PATTERN; } });
6
+ Object.defineProperty(exports, "SUBNET_ID_PATTERN", { enumerable: true, get: function () { return constants_1.SUBNET_ID_PATTERN; } });
7
+ Object.defineProperty(exports, "VPC_ID_PATTERN", { enumerable: true, get: function () { return constants_1.VPC_ID_PATTERN; } });
8
+ const tags_1 = require("./primitives/tags");
4
9
  const zod_1 = require("zod");
5
10
  // ============================================================================
6
11
  // Shared Authorization Schemas
@@ -26,6 +31,9 @@ const OidcDiscoveryUrlSchema = zod_1.z
26
31
  // ── Custom Claims Schemas (matches CFN CustomClaimValidationType) ──
27
32
  // API-documented patterns (from ClaimMatchValueType and CustomClaimValidationType)
28
33
  const MATCH_VALUE_PATTERN = /^[A-Za-z0-9_.-]+$/;
34
+ // OAuth scope token: printable ASCII excluding space (0x20) and double-quote (0x22).
35
+ // Mirrors CFN CustomJWTAuthorizerConfiguration.AllowedScopes.items pattern byte-for-byte.
36
+ const ALLOWED_SCOPE_PATTERN = /^[\x21\x23-\x5B\x5D-\x7E]+$/;
29
37
  const CLAIM_NAME_PATTERN = /^[A-Za-z0-9_.:-]+$/;
30
38
  // Server-side reserved claim names (not regex-documented; API rejects these at deploy time)
31
39
  const RESERVED_CLAIM_NAMES = ['client_id'];
@@ -68,6 +76,74 @@ exports.CustomClaimValidationSchema = zod_1.z
68
76
  }),
69
77
  })
70
78
  .strict();
79
+ // ── PrivateLink Inbound — private endpoint for reaching the OIDC discovery URL ──
80
+ //
81
+ // Nested inside CustomJWTAuthorizerConfiguration ("PrivateLink inbound" GA-parity feature):
82
+ // when a JWT IdP's discovery/JWKS endpoint is privately hosted, this tells the harness how to
83
+ // reach it over a private network. Two mutually-exclusive arms. Patterns match the
84
+ // AWS::BedrockAgentCore::Harness CFN spec byte-for-byte.
85
+ // VPC Lattice resource-config id, or its full ARN. Exported so the TUI validators reuse the
86
+ // schema regex (single source of truth) instead of hand-rolled checks that drift from it.
87
+ exports.LATTICE_RESOURCE_CONFIG_PATTERN = /^((rcfg-[0-9a-z]{17})|(arn:[a-z0-9-]+:vpc-lattice:[a-zA-Z0-9-]+:\d{12}:resourceconfiguration\/rcfg-[0-9a-z]{17}))$/;
88
+ exports.EndpointIpAddressTypeSchema = zod_1.z.enum(['IPV4', 'IPV6']);
89
+ /** Reach the discovery endpoint via a self-managed VPC Lattice resource configuration. */
90
+ exports.SelfManagedLatticeResourceSchema = zod_1.z
91
+ .object({
92
+ resourceConfigurationIdentifier: zod_1.z
93
+ .string()
94
+ .min(20)
95
+ .max(2048)
96
+ .regex(exports.LATTICE_RESOURCE_CONFIG_PATTERN, 'Must be a VPC Lattice resource-config id (rcfg-...) or its ARN'),
97
+ })
98
+ .strict();
99
+ /** Reach the discovery endpoint via a service-managed VPC interface endpoint. */
100
+ exports.ManagedVpcResourceSchema = zod_1.z
101
+ .object({
102
+ vpcIdentifier: zod_1.z.string().regex(constants_1.VPC_ID_PATTERN, 'Must be a VPC id (vpc-...)'),
103
+ subnetIds: zod_1.z.array(zod_1.z.string().regex(constants_1.SUBNET_ID_PATTERN, 'Must be a subnet id (subnet-...)')).min(1),
104
+ endpointIpAddressType: exports.EndpointIpAddressTypeSchema,
105
+ securityGroupIds: zod_1.z
106
+ .array(zod_1.z.string().regex(constants_1.SECURITY_GROUP_ID_PATTERN, 'Must be a security group id (sg-...)'))
107
+ .max(5)
108
+ .optional(),
109
+ tags: tags_1.TagsSchema.optional(),
110
+ routingDomain: zod_1.z.string().min(3).max(255).optional(),
111
+ })
112
+ .strict();
113
+ /**
114
+ * A private endpoint: exactly one of selfManagedLatticeResource or managedVpcResource.
115
+ * The CFN spec dropped `oneOf` (contract-test antipattern) and enforces exactly-one structurally;
116
+ * we mirror that with a superRefine rather than a discriminated union.
117
+ */
118
+ exports.PrivateEndpointSchema = zod_1.z
119
+ .object({
120
+ selfManagedLatticeResource: exports.SelfManagedLatticeResourceSchema.optional(),
121
+ managedVpcResource: exports.ManagedVpcResourceSchema.optional(),
122
+ })
123
+ .strict()
124
+ .superRefine((data, ctx) => {
125
+ const count = [data.selfManagedLatticeResource, data.managedVpcResource].filter(v => v !== undefined).length;
126
+ if (count !== 1) {
127
+ ctx.addIssue({
128
+ code: zod_1.z.ZodIssueCode.custom,
129
+ message: 'A private endpoint must set exactly one of selfManagedLatticeResource or managedVpcResource',
130
+ });
131
+ }
132
+ });
133
+ /** Maps a specific domain to its own private endpoint (overrides the discovery-URL endpoint for that domain). */
134
+ exports.PrivateEndpointOverrideSchema = zod_1.z
135
+ .object({
136
+ domain: zod_1.z.string().min(1).max(253),
137
+ privateEndpoint: exports.PrivateEndpointSchema,
138
+ })
139
+ .strict();
140
+ function privateEndpointArm(pe) {
141
+ if (pe.selfManagedLatticeResource)
142
+ return 'selfManagedLatticeResource';
143
+ if (pe.managedVpcResource)
144
+ return 'managedVpcResource';
145
+ return undefined;
146
+ }
71
147
  // ── Custom JWT Authorizer Configuration ──
72
148
  /**
73
149
  * Custom JWT authorizer configuration.
@@ -84,10 +160,20 @@ exports.CustomJwtAuthorizerConfigSchema = zod_1.z
84
160
  allowedAudience: zod_1.z.array(zod_1.z.string().min(1)).optional(),
85
161
  /** List of allowed client IDs */
86
162
  allowedClients: zod_1.z.array(zod_1.z.string().min(1)).optional(),
87
- /** List of allowed scopes */
88
- allowedScopes: zod_1.z.array(zod_1.z.string().min(1)).optional(),
163
+ /** List of allowed scopes (printable ASCII, no space/quote; ≤255 chars each — CFN parity) */
164
+ allowedScopes: zod_1.z
165
+ .array(zod_1.z
166
+ .string()
167
+ .min(1)
168
+ .max(255)
169
+ .regex(ALLOWED_SCOPE_PATTERN, 'Scope must be printable ASCII with no spaces or quotes'))
170
+ .optional(),
89
171
  /** Custom claim validations */
90
172
  customClaims: zod_1.z.array(exports.CustomClaimValidationSchema).min(1).optional(),
173
+ /** PrivateLink inbound: how to reach the OIDC discovery endpoint over a private network. */
174
+ privateEndpoint: exports.PrivateEndpointSchema.optional(),
175
+ /** Per-domain private-endpoint overrides (≤5). */
176
+ privateEndpointOverrides: zod_1.z.array(exports.PrivateEndpointOverrideSchema).max(5).optional(),
91
177
  })
92
178
  .strict()
93
179
  .superRefine((data, ctx) => {
@@ -101,6 +187,44 @@ exports.CustomJwtAuthorizerConfigSchema = zod_1.z
101
187
  message: 'At least one of allowedAudience, allowedClients, allowedScopes, or customClaims must be provided',
102
188
  });
103
189
  }
190
+ // PrivateEndpointOverrides coupling rules — mirror the AgentCore Identity service's deploy-time
191
+ // validation so the user fails fast here instead of mid-deploy.
192
+ const overrides = data.privateEndpointOverrides ?? [];
193
+ if (overrides.length > 0) {
194
+ // 1. Overrides require a base privateEndpoint.
195
+ if (!data.privateEndpoint) {
196
+ ctx.addIssue({
197
+ code: zod_1.z.ZodIssueCode.custom,
198
+ message: 'privateEndpointOverrides can only be used when privateEndpoint is also set',
199
+ path: ['privateEndpointOverrides'],
200
+ });
201
+ }
202
+ else {
203
+ // 2. The base endpoint and every override must use the same arm (all self-managed or all service-managed).
204
+ const baseArm = privateEndpointArm(data.privateEndpoint);
205
+ overrides.forEach((o, i) => {
206
+ if (privateEndpointArm(o.privateEndpoint) !== baseArm) {
207
+ ctx.addIssue({
208
+ code: zod_1.z.ZodIssueCode.custom,
209
+ message: 'privateEndpoint and privateEndpointOverrides must all be the same kind — either all selfManagedLatticeResource or all managedVpcResource',
210
+ path: ['privateEndpointOverrides', i, 'privateEndpoint'],
211
+ });
212
+ }
213
+ });
214
+ }
215
+ // 3. Override domains must be unique.
216
+ const seen = new Set();
217
+ overrides.forEach((o, i) => {
218
+ if (seen.has(o.domain)) {
219
+ ctx.addIssue({
220
+ code: zod_1.z.ZodIssueCode.custom,
221
+ message: `Duplicate privateEndpointOverride domain: ${o.domain}`,
222
+ path: ['privateEndpointOverrides', i, 'domain'],
223
+ });
224
+ }
225
+ seen.add(o.domain);
226
+ });
227
+ }
104
228
  });
105
229
  /**
106
230
  * Resource-agnostic authorizer configuration container.
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/schema/schemas/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/schema/schemas/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,185 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * OAuth grant type for an external gateway, matching the runtime/Smithy model.
4
+ * The harness runtime maps these to AgentCore Identity auth flows:
5
+ * CLIENT_CREDENTIALS -> M2M, AUTHORIZATION_CODE -> USER_FEDERATION, TOKEN_EXCHANGE -> TOKEN_EXCHANGE.
6
+ */
7
+ export declare const GatewayGrantTypeSchema: z.ZodEnum<{
8
+ CLIENT_CREDENTIALS: "CLIENT_CREDENTIALS";
9
+ AUTHORIZATION_CODE: "AUTHORIZATION_CODE";
10
+ TOKEN_EXCHANGE: "TOKEN_EXCHANGE";
11
+ }>;
12
+ export type GatewayGrantType = z.infer<typeof GatewayGrantTypeSchema>;
13
+ /**
14
+ * Outbound auth a caller uses to reach an external gateway. This is the union the
15
+ * gateway/harness runtime actually consumes — NOT the gateway's inbound authorizerType
16
+ * (which lives on the gateway resource and is invisible to an external caller).
17
+ * - awsIam: SigV4-sign with the execution role (grants InvokeGateway)
18
+ * - none: no auth
19
+ * - oauth: fetch an OAuth token via AgentCore Identity (grants token-fetch perms on
20
+ * the provider). All four oauth fields are consumed at runtime.
21
+ */
22
+ export declare const GatewayOutboundAuthSchema: z.ZodUnion<readonly [z.ZodObject<{
23
+ awsIam: z.ZodObject<{}, z.core.$strict>;
24
+ }, z.core.$strict>, z.ZodObject<{
25
+ none: z.ZodObject<{}, z.core.$strict>;
26
+ }, z.core.$strict>, z.ZodObject<{
27
+ oauth: z.ZodObject<{
28
+ providerArn: z.ZodString;
29
+ scopes: z.ZodArray<z.ZodString>;
30
+ grantType: z.ZodOptional<z.ZodEnum<{
31
+ CLIENT_CREDENTIALS: "CLIENT_CREDENTIALS";
32
+ AUTHORIZATION_CODE: "AUTHORIZATION_CODE";
33
+ TOKEN_EXCHANGE: "TOKEN_EXCHANGE";
34
+ }>>;
35
+ customParameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
36
+ }, z.core.$strict>;
37
+ }, z.core.$strict>]>;
38
+ export type GatewayOutboundAuth = z.infer<typeof GatewayOutboundAuthSchema>;
39
+ export declare const BROWSER_ARN_PATTERN: RegExp;
40
+ export declare const CODE_INTERPRETER_ARN_PATTERN: RegExp;
41
+ export declare const ConnectionTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
42
+ type: z.ZodLiteral<"memory">;
43
+ arn: z.ZodString;
44
+ namespaces: z.ZodOptional<z.ZodArray<z.ZodString>>;
45
+ }, z.core.$strict>, z.ZodObject<{
46
+ type: z.ZodLiteral<"gateway">;
47
+ arn: z.ZodString;
48
+ outboundAuth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
49
+ awsIam: z.ZodObject<{}, z.core.$strict>;
50
+ }, z.core.$strict>, z.ZodObject<{
51
+ none: z.ZodObject<{}, z.core.$strict>;
52
+ }, z.core.$strict>, z.ZodObject<{
53
+ oauth: z.ZodObject<{
54
+ providerArn: z.ZodString;
55
+ scopes: z.ZodArray<z.ZodString>;
56
+ grantType: z.ZodOptional<z.ZodEnum<{
57
+ CLIENT_CREDENTIALS: "CLIENT_CREDENTIALS";
58
+ AUTHORIZATION_CODE: "AUTHORIZATION_CODE";
59
+ TOKEN_EXCHANGE: "TOKEN_EXCHANGE";
60
+ }>>;
61
+ customParameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
62
+ }, z.core.$strict>;
63
+ }, z.core.$strict>]>>;
64
+ }, z.core.$strict>, z.ZodObject<{
65
+ type: z.ZodLiteral<"runtime">;
66
+ arn: z.ZodString;
67
+ exec: z.ZodOptional<z.ZodBoolean>;
68
+ }, z.core.$strict>, z.ZodObject<{
69
+ type: z.ZodLiteral<"browser">;
70
+ arn: z.ZodOptional<z.ZodString>;
71
+ }, z.core.$strict>, z.ZodObject<{
72
+ type: z.ZodLiteral<"codeInterpreter">;
73
+ arn: z.ZodOptional<z.ZodString>;
74
+ }, z.core.$strict>], "type">;
75
+ export type ConnectionTarget = z.infer<typeof ConnectionTargetSchema>;
76
+ /**
77
+ * A single connection from the enclosing principal to an external resource.
78
+ * `access` is meaningful only for memory (read | readwrite); ignored for invoke-only
79
+ * targets. Defaults to `read` (least-privilege).
80
+ */
81
+ export declare const ConnectionSchema: z.ZodObject<{
82
+ id: z.ZodOptional<z.ZodString>;
83
+ to: z.ZodDiscriminatedUnion<[z.ZodObject<{
84
+ type: z.ZodLiteral<"memory">;
85
+ arn: z.ZodString;
86
+ namespaces: z.ZodOptional<z.ZodArray<z.ZodString>>;
87
+ }, z.core.$strict>, z.ZodObject<{
88
+ type: z.ZodLiteral<"gateway">;
89
+ arn: z.ZodString;
90
+ outboundAuth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
91
+ awsIam: z.ZodObject<{}, z.core.$strict>;
92
+ }, z.core.$strict>, z.ZodObject<{
93
+ none: z.ZodObject<{}, z.core.$strict>;
94
+ }, z.core.$strict>, z.ZodObject<{
95
+ oauth: z.ZodObject<{
96
+ providerArn: z.ZodString;
97
+ scopes: z.ZodArray<z.ZodString>;
98
+ grantType: z.ZodOptional<z.ZodEnum<{
99
+ CLIENT_CREDENTIALS: "CLIENT_CREDENTIALS";
100
+ AUTHORIZATION_CODE: "AUTHORIZATION_CODE";
101
+ TOKEN_EXCHANGE: "TOKEN_EXCHANGE";
102
+ }>>;
103
+ customParameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
104
+ }, z.core.$strict>;
105
+ }, z.core.$strict>]>>;
106
+ }, z.core.$strict>, z.ZodObject<{
107
+ type: z.ZodLiteral<"runtime">;
108
+ arn: z.ZodString;
109
+ exec: z.ZodOptional<z.ZodBoolean>;
110
+ }, z.core.$strict>, z.ZodObject<{
111
+ type: z.ZodLiteral<"browser">;
112
+ arn: z.ZodOptional<z.ZodString>;
113
+ }, z.core.$strict>, z.ZodObject<{
114
+ type: z.ZodLiteral<"codeInterpreter">;
115
+ arn: z.ZodOptional<z.ZodString>;
116
+ }, z.core.$strict>], "type">;
117
+ access: z.ZodOptional<z.ZodEnum<{
118
+ read: "read";
119
+ readwrite: "readwrite";
120
+ }>>;
121
+ description: z.ZodOptional<z.ZodString>;
122
+ }, z.core.$strict>;
123
+ export type Connection = z.infer<typeof ConnectionSchema>;
124
+ export declare const ConnectionsSchema: z.ZodArray<z.ZodObject<{
125
+ id: z.ZodOptional<z.ZodString>;
126
+ to: z.ZodDiscriminatedUnion<[z.ZodObject<{
127
+ type: z.ZodLiteral<"memory">;
128
+ arn: z.ZodString;
129
+ namespaces: z.ZodOptional<z.ZodArray<z.ZodString>>;
130
+ }, z.core.$strict>, z.ZodObject<{
131
+ type: z.ZodLiteral<"gateway">;
132
+ arn: z.ZodString;
133
+ outboundAuth: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
134
+ awsIam: z.ZodObject<{}, z.core.$strict>;
135
+ }, z.core.$strict>, z.ZodObject<{
136
+ none: z.ZodObject<{}, z.core.$strict>;
137
+ }, z.core.$strict>, z.ZodObject<{
138
+ oauth: z.ZodObject<{
139
+ providerArn: z.ZodString;
140
+ scopes: z.ZodArray<z.ZodString>;
141
+ grantType: z.ZodOptional<z.ZodEnum<{
142
+ CLIENT_CREDENTIALS: "CLIENT_CREDENTIALS";
143
+ AUTHORIZATION_CODE: "AUTHORIZATION_CODE";
144
+ TOKEN_EXCHANGE: "TOKEN_EXCHANGE";
145
+ }>>;
146
+ customParameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
147
+ }, z.core.$strict>;
148
+ }, z.core.$strict>]>>;
149
+ }, z.core.$strict>, z.ZodObject<{
150
+ type: z.ZodLiteral<"runtime">;
151
+ arn: z.ZodString;
152
+ exec: z.ZodOptional<z.ZodBoolean>;
153
+ }, z.core.$strict>, z.ZodObject<{
154
+ type: z.ZodLiteral<"browser">;
155
+ arn: z.ZodOptional<z.ZodString>;
156
+ }, z.core.$strict>, z.ZodObject<{
157
+ type: z.ZodLiteral<"codeInterpreter">;
158
+ arn: z.ZodOptional<z.ZodString>;
159
+ }, z.core.$strict>], "type">;
160
+ access: z.ZodOptional<z.ZodEnum<{
161
+ read: "read";
162
+ readwrite: "readwrite";
163
+ }>>;
164
+ description: z.ZodOptional<z.ZodString>;
165
+ }, z.core.$strict>>;
166
+ /** Maximum length of a connection id (matches the ConnectionSchema id regex bound). */
167
+ export declare const CONNECTION_ID_MAX_LENGTH = 64;
168
+ /** Last segment of an ARN (the resource id): `memory/mem-123` -> `mem-123`. */
169
+ export declare function resourceIdFromArn(arn: string): string;
170
+ /**
171
+ * Stable connection id for an external target: `<kind>-<resourceId>`, sanitized to the schema id
172
+ * charset and length. Used as the connection's `id` AND as the basis for its discovery env-var
173
+ * token, so the name baked into generated code matches what deploy injects.
174
+ */
175
+ export declare function connectionIdForTarget(target: ConnectionTarget): string;
176
+ /** Uppercase, underscore-safe token for env-var naming, derived from a connection id. */
177
+ export declare function connectionEnvToken(id: string): string;
178
+ /**
179
+ * Resolve the env-var token for a connection. Prefers the explicit `id`; otherwise derives the same
180
+ * `<kind>-<resourceId>` id the CLI would have assigned — so an id-less connection (schema permits it,
181
+ * e.g. a hand-authored config or a direct @aws/agentcore-cdk consumer) yields the SAME token on both
182
+ * sides instead of diverging.
183
+ */
184
+ export declare function connectionTokenFor(connection: Connection): string;
185
+ //# sourceMappingURL=connections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../../src/schema/schemas/connections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;EAAyE,CAAC;AAC7G,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;oBAepC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAW5E,eAAO,MAAM,mBAAmB,QAAgF,CAAC;AACjH,eAAO,MAAM,4BAA4B,QAC+C,CAAC;AAiDzF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAMjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAUlB,CAAC;AACZ,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAA4B,CAAC;AAc3D,uFAAuF;AACvF,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAKtE;AAED,yFAAyF;AACzF,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAEjE"}