capo-codeartifact 0.1.0__py3-none-any.whl

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 (294) hide show
  1. capo_codeartifact/__init__.py +72 -0
  2. capo_codeartifact/_async.py +25 -0
  3. capo_codeartifact/_auth/_identity.py +16 -0
  4. capo_codeartifact/_auth/_providers.py +886 -0
  5. capo_codeartifact/_auth/_signers.py +88 -0
  6. capo_codeartifact/_auth/_sigv4.py +434 -0
  7. capo_codeartifact/_auth/_zapros_handler.py +80 -0
  8. capo_codeartifact/_iter.py +113 -0
  9. capo_codeartifact/_operations/code_artifact_control_plane_service/associate_external_connection.py +181 -0
  10. capo_codeartifact/_operations/code_artifact_control_plane_service/copy_package_versions.py +202 -0
  11. capo_codeartifact/_operations/code_artifact_control_plane_service/create_domain.py +182 -0
  12. capo_codeartifact/_operations/code_artifact_control_plane_service/create_package_group.py +182 -0
  13. capo_codeartifact/_operations/code_artifact_control_plane_service/create_repository.py +189 -0
  14. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_domain.py +169 -0
  15. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_domain_permissions_policy.py +174 -0
  16. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_package.py +190 -0
  17. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_package_group.py +179 -0
  18. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_package_versions.py +195 -0
  19. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_repository.py +178 -0
  20. capo_codeartifact/_operations/code_artifact_control_plane_service/delete_repository_permissions_policy.py +176 -0
  21. capo_codeartifact/_operations/code_artifact_control_plane_service/describe_domain.py +169 -0
  22. capo_codeartifact/_operations/code_artifact_control_plane_service/describe_package.py +187 -0
  23. capo_codeartifact/_operations/code_artifact_control_plane_service/describe_package_group.py +169 -0
  24. capo_codeartifact/_operations/code_artifact_control_plane_service/describe_package_version.py +194 -0
  25. capo_codeartifact/_operations/code_artifact_control_plane_service/describe_repository.py +173 -0
  26. capo_codeartifact/_operations/code_artifact_control_plane_service/disassociate_external_connection.py +181 -0
  27. capo_codeartifact/_operations/code_artifact_control_plane_service/dispose_package_versions.py +200 -0
  28. capo_codeartifact/_operations/code_artifact_control_plane_service/get_associated_package_group.py +177 -0
  29. capo_codeartifact/_operations/code_artifact_control_plane_service/get_authorization_token.py +169 -0
  30. capo_codeartifact/_operations/code_artifact_control_plane_service/get_domain_permissions_policy.py +167 -0
  31. capo_codeartifact/_operations/code_artifact_control_plane_service/get_package_version_asset.py +208 -0
  32. capo_codeartifact/_operations/code_artifact_control_plane_service/get_package_version_readme.py +184 -0
  33. capo_codeartifact/_operations/code_artifact_control_plane_service/get_repository_endpoint.py +189 -0
  34. capo_codeartifact/_operations/code_artifact_control_plane_service/get_repository_permissions_policy.py +169 -0
  35. capo_codeartifact/_operations/code_artifact_control_plane_service/list_allowed_repositories_for_group.py +190 -0
  36. capo_codeartifact/_operations/code_artifact_control_plane_service/list_associated_packages.py +174 -0
  37. capo_codeartifact/_operations/code_artifact_control_plane_service/list_domains.py +164 -0
  38. capo_codeartifact/_operations/code_artifact_control_plane_service/list_package_groups.py +177 -0
  39. capo_codeartifact/_operations/code_artifact_control_plane_service/list_package_version_assets.py +189 -0
  40. capo_codeartifact/_operations/code_artifact_control_plane_service/list_package_version_dependencies.py +187 -0
  41. capo_codeartifact/_operations/code_artifact_control_plane_service/list_package_versions.py +220 -0
  42. capo_codeartifact/_operations/code_artifact_control_plane_service/list_packages.py +209 -0
  43. capo_codeartifact/_operations/code_artifact_control_plane_service/list_repositories.py +168 -0
  44. capo_codeartifact/_operations/code_artifact_control_plane_service/list_repositories_in_domain.py +175 -0
  45. capo_codeartifact/_operations/code_artifact_control_plane_service/list_sub_package_groups.py +173 -0
  46. capo_codeartifact/_operations/code_artifact_control_plane_service/list_tags_for_resource.py +160 -0
  47. capo_codeartifact/_operations/code_artifact_control_plane_service/publish_package_version.py +209 -0
  48. capo_codeartifact/_operations/code_artifact_control_plane_service/put_domain_permissions_policy.py +179 -0
  49. capo_codeartifact/_operations/code_artifact_control_plane_service/put_package_origin_configuration.py +190 -0
  50. capo_codeartifact/_operations/code_artifact_control_plane_service/put_repository_permissions_policy.py +185 -0
  51. capo_codeartifact/_operations/code_artifact_control_plane_service/tag_resource.py +163 -0
  52. capo_codeartifact/_operations/code_artifact_control_plane_service/untag_resource.py +158 -0
  53. capo_codeartifact/_operations/code_artifact_control_plane_service/update_package_group.py +176 -0
  54. capo_codeartifact/_operations/code_artifact_control_plane_service/update_package_group_origin_configuration.py +183 -0
  55. capo_codeartifact/_operations/code_artifact_control_plane_service/update_package_versions_status.py +198 -0
  56. capo_codeartifact/_operations/code_artifact_control_plane_service/update_repository.py +188 -0
  57. capo_codeartifact/_pagination.py +21 -0
  58. capo_codeartifact/_protocol/__init__.py +1 -0
  59. capo_codeartifact/_protocol/errors.py +93 -0
  60. capo_codeartifact/_protocol/eventstream.py +238 -0
  61. capo_codeartifact/_protocol/serialize.py +47 -0
  62. capo_codeartifact/_protocol/xml.py +33 -0
  63. capo_codeartifact/_rule_engine/__init__.py +0 -0
  64. capo_codeartifact/_rule_engine/_aws_partition.py +160 -0
  65. capo_codeartifact/_rule_engine/_endpoint_rule_set.py +138 -0
  66. capo_codeartifact/_rule_engine/_endpoint_runtime.py +389 -0
  67. capo_codeartifact/_services/_aws_config.py +160 -0
  68. capo_codeartifact/_services/_pipeline.py +198 -0
  69. capo_codeartifact/_services/async_codeartifact.py +3870 -0
  70. capo_codeartifact/_services/codeartifact.py +3822 -0
  71. capo_codeartifact/errors/__init__.py +36 -0
  72. capo_codeartifact/errors/_base.py +94 -0
  73. capo_codeartifact/errors/access_denied_exception.py +52 -0
  74. capo_codeartifact/errors/conflict_exception.py +71 -0
  75. capo_codeartifact/errors/internal_server_exception.py +52 -0
  76. capo_codeartifact/errors/resource_not_found_exception.py +73 -0
  77. capo_codeartifact/errors/service_quota_exceeded_exception.py +75 -0
  78. capo_codeartifact/errors/throttling_exception.py +55 -0
  79. capo_codeartifact/errors/validation_exception.py +71 -0
  80. capo_codeartifact/py.typed +0 -0
  81. capo_codeartifact/types/_prelude/blob.py +12 -0
  82. capo_codeartifact/types/_prelude/timestamp.py +17 -0
  83. capo_codeartifact/types/account_id.py +5 -0
  84. capo_codeartifact/types/allow_publish.py +17 -0
  85. capo_codeartifact/types/allow_upstream.py +17 -0
  86. capo_codeartifact/types/arn.py +5 -0
  87. capo_codeartifact/types/asset.py +7 -0
  88. capo_codeartifact/types/asset_hashes.py +33 -0
  89. capo_codeartifact/types/asset_name.py +5 -0
  90. capo_codeartifact/types/asset_summary.py +53 -0
  91. capo_codeartifact/types/asset_summary_list.py +29 -0
  92. capo_codeartifact/types/associate_external_connection_request.py +35 -0
  93. capo_codeartifact/types/associate_external_connection_result.py +42 -0
  94. capo_codeartifact/types/associated_package.py +71 -0
  95. capo_codeartifact/types/associated_package_list.py +31 -0
  96. capo_codeartifact/types/authorization_token_duration_seconds.py +5 -0
  97. capo_codeartifact/types/boolean_optional.py +5 -0
  98. capo_codeartifact/types/copy_package_versions_request.py +96 -0
  99. capo_codeartifact/types/copy_package_versions_result.py +63 -0
  100. capo_codeartifact/types/create_domain_request.py +42 -0
  101. capo_codeartifact/types/create_domain_result.py +36 -0
  102. capo_codeartifact/types/create_package_group_request.py +64 -0
  103. capo_codeartifact/types/create_package_group_result.py +42 -0
  104. capo_codeartifact/types/create_repository_request.py +69 -0
  105. capo_codeartifact/types/create_repository_result.py +42 -0
  106. capo_codeartifact/types/delete_domain_permissions_policy_request.py +32 -0
  107. capo_codeartifact/types/delete_domain_permissions_policy_result.py +36 -0
  108. capo_codeartifact/types/delete_domain_request.py +27 -0
  109. capo_codeartifact/types/delete_domain_result.py +36 -0
  110. capo_codeartifact/types/delete_package_group_request.py +30 -0
  111. capo_codeartifact/types/delete_package_group_result.py +42 -0
  112. capo_codeartifact/types/delete_package_request.py +39 -0
  113. capo_codeartifact/types/delete_package_result.py +39 -0
  114. capo_codeartifact/types/delete_package_versions_request.py +78 -0
  115. capo_codeartifact/types/delete_package_versions_result.py +63 -0
  116. capo_codeartifact/types/delete_repository_permissions_policy_request.py +35 -0
  117. capo_codeartifact/types/delete_repository_permissions_policy_result.py +36 -0
  118. capo_codeartifact/types/delete_repository_request.py +30 -0
  119. capo_codeartifact/types/delete_repository_result.py +42 -0
  120. capo_codeartifact/types/describe_domain_request.py +27 -0
  121. capo_codeartifact/types/describe_domain_result.py +35 -0
  122. capo_codeartifact/types/describe_package_group_request.py +30 -0
  123. capo_codeartifact/types/describe_package_group_result.py +42 -0
  124. capo_codeartifact/types/describe_package_request.py +39 -0
  125. capo_codeartifact/types/describe_package_result.py +39 -0
  126. capo_codeartifact/types/describe_package_version_request.py +42 -0
  127. capo_codeartifact/types/describe_package_version_result.py +47 -0
  128. capo_codeartifact/types/describe_repository_request.py +30 -0
  129. capo_codeartifact/types/describe_repository_result.py +42 -0
  130. capo_codeartifact/types/description.py +5 -0
  131. capo_codeartifact/types/disassociate_external_connection_request.py +35 -0
  132. capo_codeartifact/types/disassociate_external_connection_result.py +42 -0
  133. capo_codeartifact/types/dispose_package_versions_request.py +99 -0
  134. capo_codeartifact/types/dispose_package_versions_result.py +63 -0
  135. capo_codeartifact/types/domain_description.py +100 -0
  136. capo_codeartifact/types/domain_entry_point.py +39 -0
  137. capo_codeartifact/types/domain_name.py +5 -0
  138. capo_codeartifact/types/domain_status.py +17 -0
  139. capo_codeartifact/types/domain_summary.py +78 -0
  140. capo_codeartifact/types/domain_summary_list.py +31 -0
  141. capo_codeartifact/types/endpoint_type.py +17 -0
  142. capo_codeartifact/types/error_message.py +5 -0
  143. capo_codeartifact/types/external_connection_name.py +5 -0
  144. capo_codeartifact/types/external_connection_status.py +14 -0
  145. capo_codeartifact/types/get_associated_package_group_request.py +36 -0
  146. capo_codeartifact/types/get_associated_package_group_result.py +63 -0
  147. capo_codeartifact/types/get_authorization_token_request.py +32 -0
  148. capo_codeartifact/types/get_authorization_token_result.py +43 -0
  149. capo_codeartifact/types/get_domain_permissions_policy_request.py +27 -0
  150. capo_codeartifact/types/get_domain_permissions_policy_result.py +36 -0
  151. capo_codeartifact/types/get_package_version_asset_request.py +50 -0
  152. capo_codeartifact/types/get_package_version_asset_result.py +26 -0
  153. capo_codeartifact/types/get_package_version_readme_request.py +42 -0
  154. capo_codeartifact/types/get_package_version_readme_result.py +73 -0
  155. capo_codeartifact/types/get_repository_endpoint_request.py +36 -0
  156. capo_codeartifact/types/get_repository_endpoint_result.py +28 -0
  157. capo_codeartifact/types/get_repository_permissions_policy_request.py +30 -0
  158. capo_codeartifact/types/get_repository_permissions_policy_result.py +36 -0
  159. capo_codeartifact/types/hash_algorithm.py +19 -0
  160. capo_codeartifact/types/hash_value.py +5 -0
  161. capo_codeartifact/types/integer.py +5 -0
  162. capo_codeartifact/types/license_info.py +34 -0
  163. capo_codeartifact/types/license_info_list.py +29 -0
  164. capo_codeartifact/types/list_allowed_repositories_for_group_max_results.py +5 -0
  165. capo_codeartifact/types/list_allowed_repositories_for_group_request.py +41 -0
  166. capo_codeartifact/types/list_allowed_repositories_for_group_result.py +49 -0
  167. capo_codeartifact/types/list_associated_packages_request.py +41 -0
  168. capo_codeartifact/types/list_associated_packages_result.py +49 -0
  169. capo_codeartifact/types/list_domains_max_results.py +5 -0
  170. capo_codeartifact/types/list_domains_request.py +37 -0
  171. capo_codeartifact/types/list_domains_result.py +45 -0
  172. capo_codeartifact/types/list_package_groups_max_results.py +5 -0
  173. capo_codeartifact/types/list_package_groups_request.py +40 -0
  174. capo_codeartifact/types/list_package_groups_result.py +49 -0
  175. capo_codeartifact/types/list_package_version_assets_max_results.py +5 -0
  176. capo_codeartifact/types/list_package_version_assets_request.py +50 -0
  177. capo_codeartifact/types/list_package_version_assets_result.py +88 -0
  178. capo_codeartifact/types/list_package_version_dependencies_request.py +45 -0
  179. capo_codeartifact/types/list_package_version_dependencies_result.py +94 -0
  180. capo_codeartifact/types/list_package_versions_max_results.py +5 -0
  181. capo_codeartifact/types/list_package_versions_request.py +62 -0
  182. capo_codeartifact/types/list_package_versions_result.py +87 -0
  183. capo_codeartifact/types/list_packages_max_results.py +5 -0
  184. capo_codeartifact/types/list_packages_request.py +53 -0
  185. capo_codeartifact/types/list_packages_result.py +45 -0
  186. capo_codeartifact/types/list_repositories_in_domain_max_results.py +5 -0
  187. capo_codeartifact/types/list_repositories_in_domain_request.py +42 -0
  188. capo_codeartifact/types/list_repositories_in_domain_result.py +49 -0
  189. capo_codeartifact/types/list_repositories_max_results.py +5 -0
  190. capo_codeartifact/types/list_repositories_request.py +34 -0
  191. capo_codeartifact/types/list_repositories_result.py +49 -0
  192. capo_codeartifact/types/list_sub_package_groups_request.py +38 -0
  193. capo_codeartifact/types/list_sub_package_groups_result.py +49 -0
  194. capo_codeartifact/types/list_tags_for_resource_request.py +24 -0
  195. capo_codeartifact/types/list_tags_for_resource_result.py +32 -0
  196. capo_codeartifact/types/long.py +5 -0
  197. capo_codeartifact/types/long_optional.py +5 -0
  198. capo_codeartifact/types/origin_restrictions.py +48 -0
  199. capo_codeartifact/types/package_dependency.py +48 -0
  200. capo_codeartifact/types/package_dependency_list.py +31 -0
  201. capo_codeartifact/types/package_description.py +71 -0
  202. capo_codeartifact/types/package_format.py +23 -0
  203. capo_codeartifact/types/package_group_allowed_repository.py +51 -0
  204. capo_codeartifact/types/package_group_allowed_repository_list.py +39 -0
  205. capo_codeartifact/types/package_group_allowed_repository_update.py +44 -0
  206. capo_codeartifact/types/package_group_allowed_repository_update_type.py +17 -0
  207. capo_codeartifact/types/package_group_allowed_repository_updates.py +48 -0
  208. capo_codeartifact/types/package_group_association_type.py +17 -0
  209. capo_codeartifact/types/package_group_contact_info.py +5 -0
  210. capo_codeartifact/types/package_group_description.py +122 -0
  211. capo_codeartifact/types/package_group_origin_configuration.py +42 -0
  212. capo_codeartifact/types/package_group_origin_restriction.py +92 -0
  213. capo_codeartifact/types/package_group_origin_restriction_mode.py +19 -0
  214. capo_codeartifact/types/package_group_origin_restriction_type.py +18 -0
  215. capo_codeartifact/types/package_group_origin_restrictions.py +48 -0
  216. capo_codeartifact/types/package_group_pattern.py +5 -0
  217. capo_codeartifact/types/package_group_pattern_prefix.py +5 -0
  218. capo_codeartifact/types/package_group_reference.py +37 -0
  219. capo_codeartifact/types/package_group_summary.py +122 -0
  220. capo_codeartifact/types/package_group_summary_list.py +31 -0
  221. capo_codeartifact/types/package_name.py +5 -0
  222. capo_codeartifact/types/package_namespace.py +5 -0
  223. capo_codeartifact/types/package_origin_configuration.py +42 -0
  224. capo_codeartifact/types/package_origin_restrictions.py +55 -0
  225. capo_codeartifact/types/package_summary.py +71 -0
  226. capo_codeartifact/types/package_summary_list.py +31 -0
  227. capo_codeartifact/types/package_version.py +5 -0
  228. capo_codeartifact/types/package_version_description.py +156 -0
  229. capo_codeartifact/types/package_version_error.py +49 -0
  230. capo_codeartifact/types/package_version_error_code.py +21 -0
  231. capo_codeartifact/types/package_version_error_map.py +33 -0
  232. capo_codeartifact/types/package_version_list.py +19 -0
  233. capo_codeartifact/types/package_version_origin.py +63 -0
  234. capo_codeartifact/types/package_version_origin_type.py +18 -0
  235. capo_codeartifact/types/package_version_revision.py +5 -0
  236. capo_codeartifact/types/package_version_revision_map.py +29 -0
  237. capo_codeartifact/types/package_version_sort_type.py +14 -0
  238. capo_codeartifact/types/package_version_status.py +21 -0
  239. capo_codeartifact/types/package_version_summary.py +73 -0
  240. capo_codeartifact/types/package_version_summary_list.py +33 -0
  241. capo_codeartifact/types/pagination_token.py +5 -0
  242. capo_codeartifact/types/policy_document.py +5 -0
  243. capo_codeartifact/types/policy_revision.py +5 -0
  244. capo_codeartifact/types/publish_package_version_request.py +43 -0
  245. capo_codeartifact/types/publish_package_version_result.py +98 -0
  246. capo_codeartifact/types/put_domain_permissions_policy_request.py +57 -0
  247. capo_codeartifact/types/put_domain_permissions_policy_result.py +36 -0
  248. capo_codeartifact/types/put_package_origin_configuration_request.py +65 -0
  249. capo_codeartifact/types/put_package_origin_configuration_result.py +42 -0
  250. capo_codeartifact/types/put_repository_permissions_policy_request.py +51 -0
  251. capo_codeartifact/types/put_repository_permissions_policy_result.py +36 -0
  252. capo_codeartifact/types/repository_description.py +119 -0
  253. capo_codeartifact/types/repository_external_connection_info.py +66 -0
  254. capo_codeartifact/types/repository_external_connection_info_list.py +39 -0
  255. capo_codeartifact/types/repository_name.py +5 -0
  256. capo_codeartifact/types/repository_name_list.py +19 -0
  257. capo_codeartifact/types/repository_summary.py +77 -0
  258. capo_codeartifact/types/repository_summary_list.py +31 -0
  259. capo_codeartifact/types/resource_policy.py +42 -0
  260. capo_codeartifact/types/resource_type.py +20 -0
  261. capo_codeartifact/types/retry_after_seconds.py +5 -0
  262. capo_codeartifact/types/sha256.py +5 -0
  263. capo_codeartifact/types/string.py +5 -0
  264. capo_codeartifact/types/string255.py +5 -0
  265. capo_codeartifact/types/successful_package_version_info.py +45 -0
  266. capo_codeartifact/types/successful_package_version_info_map.py +41 -0
  267. capo_codeartifact/types/tag.py +39 -0
  268. capo_codeartifact/types/tag_key.py +5 -0
  269. capo_codeartifact/types/tag_key_list.py +17 -0
  270. capo_codeartifact/types/tag_list.py +29 -0
  271. capo_codeartifact/types/tag_resource_request.py +38 -0
  272. capo_codeartifact/types/tag_resource_result.py +18 -0
  273. capo_codeartifact/types/tag_value.py +5 -0
  274. capo_codeartifact/types/timestamp.py +20 -0
  275. capo_codeartifact/types/untag_resource_request.py +42 -0
  276. capo_codeartifact/types/untag_resource_result.py +18 -0
  277. capo_codeartifact/types/update_package_group_origin_configuration_request.py +92 -0
  278. capo_codeartifact/types/update_package_group_origin_configuration_result.py +63 -0
  279. capo_codeartifact/types/update_package_group_request.py +53 -0
  280. capo_codeartifact/types/update_package_group_result.py +42 -0
  281. capo_codeartifact/types/update_package_versions_status_request.py +120 -0
  282. capo_codeartifact/types/update_package_versions_status_result.py +63 -0
  283. capo_codeartifact/types/update_repository_request.py +58 -0
  284. capo_codeartifact/types/update_repository_result.py +42 -0
  285. capo_codeartifact/types/upstream_repository.py +31 -0
  286. capo_codeartifact/types/upstream_repository_info.py +30 -0
  287. capo_codeartifact/types/upstream_repository_info_list.py +35 -0
  288. capo_codeartifact/types/upstream_repository_list.py +31 -0
  289. capo_codeartifact/types/validation_exception_reason.py +20 -0
  290. capo_codeartifact-0.1.0.dist-info/METADATA +139 -0
  291. capo_codeartifact-0.1.0.dist-info/RECORD +294 -0
  292. capo_codeartifact-0.1.0.dist-info/WHEEL +5 -0
  293. capo_codeartifact-0.1.0.dist-info/licenses/LICENSE +21 -0
  294. capo_codeartifact-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,63 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionOrigin``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_codeartifact.types.domain_entry_point
9
+ import capo_codeartifact.types.package_version_origin_type
10
+
11
+
12
+ class PackageVersionOrigin(TypedDict, closed=True):
13
+ domain_entry_point: NotRequired[
14
+ "capo_codeartifact.types.domain_entry_point.DomainEntryPoint"
15
+ ]
16
+ r"""<p>A <a href=\"https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_DomainEntryPoint.html\">DomainEntryPoint</a> object that contains information about from which repository or external connection the package version was added to the domain.</p>"""
17
+ origin_type: NotRequired[
18
+ "capo_codeartifact.types.package_version_origin_type.PackageVersionOriginType"
19
+ ]
20
+ """<p>Describes how the package version was originally added to the domain. An <code>INTERNAL</code> origin type means the package version was published directly to a repository in the domain. An <code>EXTERNAL</code> origin type means the package version was ingested from an external connection.</p>"""
21
+
22
+
23
+ # --- restJson1 ser/de ---
24
+ def serialize_json(value: PackageVersionOrigin) -> dict:
25
+ out: dict = {}
26
+ if "domain_entry_point" in value:
27
+ import capo_codeartifact.types.domain_entry_point
28
+
29
+ out["domainEntryPoint"] = (
30
+ capo_codeartifact.types.domain_entry_point.serialize_json(
31
+ value["domain_entry_point"]
32
+ )
33
+ )
34
+ if "origin_type" in value:
35
+ import capo_codeartifact.types.package_version_origin_type
36
+
37
+ out["originType"] = (
38
+ capo_codeartifact.types.package_version_origin_type.serialize_json(
39
+ value["origin_type"]
40
+ )
41
+ )
42
+ return out
43
+
44
+
45
+ def deserialize_json(data: dict) -> PackageVersionOrigin:
46
+ out: PackageVersionOrigin = {} # type: ignore[typeddict-item]
47
+ if data.get("domainEntryPoint") is not None:
48
+ import capo_codeartifact.types.domain_entry_point
49
+
50
+ out["domain_entry_point"] = (
51
+ capo_codeartifact.types.domain_entry_point.deserialize_json(
52
+ data["domainEntryPoint"]
53
+ )
54
+ )
55
+ if data.get("originType") is not None:
56
+ import capo_codeartifact.types.package_version_origin_type
57
+
58
+ out["origin_type"] = (
59
+ capo_codeartifact.types.package_version_origin_type.deserialize_json(
60
+ data["originType"]
61
+ )
62
+ )
63
+ return out
@@ -0,0 +1,18 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionOriginType``."""
2
+
3
+ from typing import Literal, TypeAlias, cast
4
+
5
+ PackageVersionOriginType: TypeAlias = Literal[
6
+ "INTERNAL",
7
+ "EXTERNAL",
8
+ "UNKNOWN",
9
+ ]
10
+
11
+
12
+ # --- restJson1 ser/de ---
13
+ def serialize_json(value: PackageVersionOriginType) -> str:
14
+ return value
15
+
16
+
17
+ def deserialize_json(data: str) -> PackageVersionOriginType:
18
+ return cast(PackageVersionOriginType, data)
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionRevision``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ PackageVersionRevision: TypeAlias = str
@@ -0,0 +1,29 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionRevisionMap``."""
2
+
3
+ from typing import TYPE_CHECKING, TypeAlias
4
+
5
+ if TYPE_CHECKING:
6
+ import capo_codeartifact.types.package_version
7
+ import capo_codeartifact.types.package_version_revision
8
+
9
+ PackageVersionRevisionMap: TypeAlias = dict[
10
+ "capo_codeartifact.types.package_version.PackageVersion",
11
+ "capo_codeartifact.types.package_version_revision.PackageVersionRevision",
12
+ ]
13
+
14
+
15
+ # --- restJson1 ser/de ---
16
+ def serialize_json(input_to_serialize: PackageVersionRevisionMap) -> dict:
17
+ out: dict = {}
18
+ for key, value in input_to_serialize.items():
19
+ out[key] = value
20
+ return out
21
+
22
+
23
+ def deserialize_json(data: dict) -> PackageVersionRevisionMap:
24
+ out: PackageVersionRevisionMap = {}
25
+ for key, value in data.items():
26
+ if value is None:
27
+ continue
28
+ out[key] = value
29
+ return out
@@ -0,0 +1,14 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionSortType``."""
2
+
3
+ from typing import Literal, TypeAlias, cast
4
+
5
+ PackageVersionSortType: TypeAlias = Literal["PUBLISHED_TIME",]
6
+
7
+
8
+ # --- restJson1 ser/de ---
9
+ def serialize_json(value: PackageVersionSortType) -> str:
10
+ return value
11
+
12
+
13
+ def deserialize_json(data: str) -> PackageVersionSortType:
14
+ return cast(PackageVersionSortType, data)
@@ -0,0 +1,21 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionStatus``."""
2
+
3
+ from typing import Literal, TypeAlias, cast
4
+
5
+ PackageVersionStatus: TypeAlias = Literal[
6
+ "Published",
7
+ "Unfinished",
8
+ "Unlisted",
9
+ "Archived",
10
+ "Disposed",
11
+ "Deleted",
12
+ ]
13
+
14
+
15
+ # --- restJson1 ser/de ---
16
+ def serialize_json(value: PackageVersionStatus) -> str:
17
+ return value
18
+
19
+
20
+ def deserialize_json(data: str) -> PackageVersionStatus:
21
+ return cast(PackageVersionStatus, data)
@@ -0,0 +1,73 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionSummary``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_codeartifact.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_codeartifact.types.package_version
11
+ import capo_codeartifact.types.package_version_origin
12
+ import capo_codeartifact.types.package_version_revision
13
+ import capo_codeartifact.types.package_version_status
14
+
15
+
16
+ class PackageVersionSummary(TypedDict, closed=True):
17
+ version: "capo_codeartifact.types.package_version.PackageVersion"
18
+ """<p> Information about a package version. </p>"""
19
+ revision: NotRequired[
20
+ "capo_codeartifact.types.package_version_revision.PackageVersionRevision"
21
+ ]
22
+ """<p> The revision associated with a package version. </p>"""
23
+ status: "capo_codeartifact.types.package_version_status.PackageVersionStatus"
24
+ """<p> A string that contains the status of the package version. It can be one of the following: </p>"""
25
+ origin: NotRequired[
26
+ "capo_codeartifact.types.package_version_origin.PackageVersionOrigin"
27
+ ]
28
+ r"""<p>A <a href=\"https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageVersionOrigin.html\">PackageVersionOrigin</a> object that contains information about how the package version was added to the repository.</p>"""
29
+
30
+
31
+ # --- restJson1 ser/de ---
32
+ def serialize_json(value: PackageVersionSummary) -> dict:
33
+ out: dict = {}
34
+ out["version"] = value["version"]
35
+ if "revision" in value:
36
+ out["revision"] = value["revision"]
37
+ import capo_codeartifact.types.package_version_status
38
+
39
+ out["status"] = capo_codeartifact.types.package_version_status.serialize_json(
40
+ value["status"]
41
+ )
42
+ if "origin" in value:
43
+ import capo_codeartifact.types.package_version_origin
44
+
45
+ out["origin"] = capo_codeartifact.types.package_version_origin.serialize_json(
46
+ value["origin"]
47
+ )
48
+ return out
49
+
50
+
51
+ def deserialize_json(data: dict) -> PackageVersionSummary:
52
+ out: PackageVersionSummary = {} # type: ignore[typeddict-item]
53
+ if data.get("version") is not None:
54
+ out["version"] = data["version"]
55
+ else:
56
+ raise DeserializationError("PackageVersionSummary.version required")
57
+ if data.get("revision") is not None:
58
+ out["revision"] = data["revision"]
59
+ if data.get("status") is not None:
60
+ import capo_codeartifact.types.package_version_status
61
+
62
+ out["status"] = capo_codeartifact.types.package_version_status.deserialize_json(
63
+ data["status"]
64
+ )
65
+ else:
66
+ raise DeserializationError("PackageVersionSummary.status required")
67
+ if data.get("origin") is not None:
68
+ import capo_codeartifact.types.package_version_origin
69
+
70
+ out["origin"] = capo_codeartifact.types.package_version_origin.deserialize_json(
71
+ data["origin"]
72
+ )
73
+ return out
@@ -0,0 +1,33 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PackageVersionSummaryList``."""
2
+
3
+ from typing import TYPE_CHECKING, TypeAlias
4
+
5
+ if TYPE_CHECKING:
6
+ import capo_codeartifact.types.package_version_summary
7
+
8
+ PackageVersionSummaryList: TypeAlias = list[
9
+ "capo_codeartifact.types.package_version_summary.PackageVersionSummary"
10
+ ]
11
+
12
+
13
+ # --- restJson1 ser/de ---
14
+ def serialize_json(value: PackageVersionSummaryList) -> list:
15
+ import capo_codeartifact.types.package_version_summary
16
+
17
+ out: list = []
18
+ for item in value:
19
+ out.append(capo_codeartifact.types.package_version_summary.serialize_json(item))
20
+ return out
21
+
22
+
23
+ def deserialize_json(data: list) -> PackageVersionSummaryList:
24
+ import capo_codeartifact.types.package_version_summary
25
+
26
+ out: PackageVersionSummaryList = []
27
+ for item in data:
28
+ if item is None:
29
+ continue
30
+ out.append(
31
+ capo_codeartifact.types.package_version_summary.deserialize_json(item)
32
+ )
33
+ return out
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PaginationToken``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ PaginationToken: TypeAlias = str
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PolicyDocument``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ PolicyDocument: TypeAlias = str
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PolicyRevision``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ PolicyRevision: TypeAlias = str
@@ -0,0 +1,43 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PublishPackageVersionRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_codeartifact.types.account_id
9
+ import capo_codeartifact.types.asset
10
+ import capo_codeartifact.types.asset_name
11
+ import capo_codeartifact.types.boolean_optional
12
+ import capo_codeartifact.types.domain_name
13
+ import capo_codeartifact.types.package_format
14
+ import capo_codeartifact.types.package_name
15
+ import capo_codeartifact.types.package_namespace
16
+ import capo_codeartifact.types.package_version
17
+ import capo_codeartifact.types.repository_name
18
+ import capo_codeartifact.types.sha256
19
+
20
+
21
+ class PublishPackageVersionRequest(TypedDict, closed=True):
22
+ domain: "capo_codeartifact.types.domain_name.DomainName"
23
+ """<p>The name of the domain that contains the repository that contains the package version to publish.</p>"""
24
+ domain_owner: NotRequired["capo_codeartifact.types.account_id.AccountId"]
25
+ """<p>The 12-digit account number of the AWS account that owns the domain. It does not include dashes or spaces.</p>"""
26
+ repository: "capo_codeartifact.types.repository_name.RepositoryName"
27
+ """<p>The name of the repository that the package version will be published to.</p>"""
28
+ format: "capo_codeartifact.types.package_format.PackageFormat"
29
+ """<p>A format that specifies the type of the package version with the requested asset file.</p> <p>The only supported value is <code>generic</code>.</p>"""
30
+ namespace: NotRequired["capo_codeartifact.types.package_namespace.PackageNamespace"]
31
+ """<p>The namespace of the package version to publish.</p>"""
32
+ package: "capo_codeartifact.types.package_name.PackageName"
33
+ """<p>The name of the package version to publish.</p>"""
34
+ package_version: "capo_codeartifact.types.package_version.PackageVersion"
35
+ """<p>The package version to publish (for example, <code>3.5.2</code>).</p>"""
36
+ asset_content: "capo_codeartifact.types.asset.Asset"
37
+ """<p>The content of the asset to publish.</p>"""
38
+ asset_name: "capo_codeartifact.types.asset_name.AssetName"
39
+ """<p>The name of the asset to publish. Asset names can include Unicode letters and numbers, and the following special characters: <code>~ ! @ ^ & ( ) - ` _ + [ ] { } ; , . `</code> </p>"""
40
+ asset_sha256: "capo_codeartifact.types.sha256.SHA256"
41
+ r"""<p>The SHA256 hash of the <code>assetContent</code> to publish. This value must be calculated by the caller and provided with the request (see <a href=\"https://docs.aws.amazon.com/codeartifact/latest/ug/using-generic.html#publishing-generic-packages\">Publishing a generic package</a> in the <i>CodeArtifact User Guide</i>).</p> <p>This value is used as an integrity check to verify that the <code>assetContent</code> has not changed after it was originally sent.</p>"""
42
+ unfinished: NotRequired["capo_codeartifact.types.boolean_optional.BooleanOptional"]
43
+ r"""<p>Specifies whether the package version should remain in the <code>unfinished</code> state. If omitted, the package version status will be set to <code>Published</code> (see <a href=\"https://docs.aws.amazon.com/codeartifact/latest/ug/packages-overview.html#package-version-status\">Package version status</a> in the <i>CodeArtifact User Guide</i>).</p> <p>Valid values: <code>unfinished</code> </p>"""
@@ -0,0 +1,98 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PublishPackageVersionResult``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_codeartifact.types.asset_summary
9
+ import capo_codeartifact.types.package_format
10
+ import capo_codeartifact.types.package_name
11
+ import capo_codeartifact.types.package_namespace
12
+ import capo_codeartifact.types.package_version
13
+ import capo_codeartifact.types.package_version_revision
14
+ import capo_codeartifact.types.package_version_status
15
+
16
+
17
+ class PublishPackageVersionResult(TypedDict, closed=True):
18
+ format: NotRequired["capo_codeartifact.types.package_format.PackageFormat"]
19
+ """<p>The format of the package version.</p>"""
20
+ namespace: NotRequired["capo_codeartifact.types.package_namespace.PackageNamespace"]
21
+ """<p>The namespace of the package version.</p>"""
22
+ package: NotRequired["capo_codeartifact.types.package_name.PackageName"]
23
+ """<p>The name of the package.</p>"""
24
+ version: NotRequired["capo_codeartifact.types.package_version.PackageVersion"]
25
+ """<p>The version of the package.</p>"""
26
+ version_revision: NotRequired[
27
+ "capo_codeartifact.types.package_version_revision.PackageVersionRevision"
28
+ ]
29
+ """<p>The revision of the package version.</p>"""
30
+ status: NotRequired[
31
+ "capo_codeartifact.types.package_version_status.PackageVersionStatus"
32
+ ]
33
+ r"""<p>A string that contains the status of the package version. For more information, see <a href=\"https://docs.aws.amazon.com/codeartifact/latest/ug/packages-overview.html#package-version-status.html#package-version-status\">Package version status</a> in the <i>CodeArtifact User Guide</i>.</p>"""
34
+ asset: NotRequired["capo_codeartifact.types.asset_summary.AssetSummary"]
35
+ r"""<p>An <a href=\"https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_AssetSummary.html\">AssetSummary</a> for the published asset.</p>"""
36
+
37
+
38
+ # --- restJson1 ser/de ---
39
+ def serialize_json(value: PublishPackageVersionResult) -> dict:
40
+ out: dict = {}
41
+ if "format" in value:
42
+ import capo_codeartifact.types.package_format
43
+
44
+ out["format"] = capo_codeartifact.types.package_format.serialize_json(
45
+ value["format"]
46
+ )
47
+ if "namespace" in value:
48
+ out["namespace"] = value["namespace"]
49
+ if "package" in value:
50
+ out["package"] = value["package"]
51
+ if "version" in value:
52
+ out["version"] = value["version"]
53
+ if "version_revision" in value:
54
+ out["versionRevision"] = value["version_revision"]
55
+ if "status" in value:
56
+ import capo_codeartifact.types.package_version_status
57
+
58
+ out["status"] = capo_codeartifact.types.package_version_status.serialize_json(
59
+ value["status"]
60
+ )
61
+ if "asset" in value:
62
+ import capo_codeartifact.types.asset_summary
63
+
64
+ out["asset"] = capo_codeartifact.types.asset_summary.serialize_json(
65
+ value["asset"]
66
+ )
67
+ return out
68
+
69
+
70
+ def deserialize_json(data: dict) -> PublishPackageVersionResult:
71
+ out: PublishPackageVersionResult = {} # type: ignore[typeddict-item]
72
+ if data.get("format") is not None:
73
+ import capo_codeartifact.types.package_format
74
+
75
+ out["format"] = capo_codeartifact.types.package_format.deserialize_json(
76
+ data["format"]
77
+ )
78
+ if data.get("namespace") is not None:
79
+ out["namespace"] = data["namespace"]
80
+ if data.get("package") is not None:
81
+ out["package"] = data["package"]
82
+ if data.get("version") is not None:
83
+ out["version"] = data["version"]
84
+ if data.get("versionRevision") is not None:
85
+ out["version_revision"] = data["versionRevision"]
86
+ if data.get("status") is not None:
87
+ import capo_codeartifact.types.package_version_status
88
+
89
+ out["status"] = capo_codeartifact.types.package_version_status.deserialize_json(
90
+ data["status"]
91
+ )
92
+ if data.get("asset") is not None:
93
+ import capo_codeartifact.types.asset_summary
94
+
95
+ out["asset"] = capo_codeartifact.types.asset_summary.deserialize_json(
96
+ data["asset"]
97
+ )
98
+ return out
@@ -0,0 +1,57 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PutDomainPermissionsPolicyRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_codeartifact.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_codeartifact.types.account_id
11
+ import capo_codeartifact.types.domain_name
12
+ import capo_codeartifact.types.policy_document
13
+ import capo_codeartifact.types.policy_revision
14
+
15
+
16
+ class PutDomainPermissionsPolicyRequest(TypedDict, closed=True):
17
+ domain: "capo_codeartifact.types.domain_name.DomainName"
18
+ """<p> The name of the domain on which to set the resource policy. </p>"""
19
+ domain_owner: NotRequired["capo_codeartifact.types.account_id.AccountId"]
20
+ """<p> The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces. </p>"""
21
+ policy_revision: NotRequired[
22
+ "capo_codeartifact.types.policy_revision.PolicyRevision"
23
+ ]
24
+ """<p> The current revision of the resource policy to be set. This revision is used for optimistic locking, which prevents others from overwriting your changes to the domain's resource policy. </p>"""
25
+ policy_document: "capo_codeartifact.types.policy_document.PolicyDocument"
26
+ """<p> A valid displayable JSON Aspen policy string to be set as the access control resource policy on the provided domain. </p>"""
27
+
28
+
29
+ # --- restJson1 ser/de ---
30
+ def serialize_json(value: PutDomainPermissionsPolicyRequest) -> dict:
31
+ out: dict = {}
32
+ out["domain"] = value["domain"]
33
+ if "domain_owner" in value:
34
+ out["domainOwner"] = value["domain_owner"]
35
+ if "policy_revision" in value:
36
+ out["policyRevision"] = value["policy_revision"]
37
+ out["policyDocument"] = value["policy_document"]
38
+ return out
39
+
40
+
41
+ def deserialize_json(data: dict) -> PutDomainPermissionsPolicyRequest:
42
+ out: PutDomainPermissionsPolicyRequest = {} # type: ignore[typeddict-item]
43
+ if data.get("domain") is not None:
44
+ out["domain"] = data["domain"]
45
+ else:
46
+ raise DeserializationError("PutDomainPermissionsPolicyRequest.domain required")
47
+ if data.get("domainOwner") is not None:
48
+ out["domain_owner"] = data["domainOwner"]
49
+ if data.get("policyRevision") is not None:
50
+ out["policy_revision"] = data["policyRevision"]
51
+ if data.get("policyDocument") is not None:
52
+ out["policy_document"] = data["policyDocument"]
53
+ else:
54
+ raise DeserializationError(
55
+ "PutDomainPermissionsPolicyRequest.policy_document required"
56
+ )
57
+ return out
@@ -0,0 +1,36 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PutDomainPermissionsPolicyResult``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_codeartifact.types.resource_policy
9
+
10
+
11
+ class PutDomainPermissionsPolicyResult(TypedDict, closed=True):
12
+ policy: NotRequired["capo_codeartifact.types.resource_policy.ResourcePolicy"]
13
+ """<p> The resource policy that was set after processing the request. </p>"""
14
+
15
+
16
+ # --- restJson1 ser/de ---
17
+ def serialize_json(value: PutDomainPermissionsPolicyResult) -> dict:
18
+ out: dict = {}
19
+ if "policy" in value:
20
+ import capo_codeartifact.types.resource_policy
21
+
22
+ out["policy"] = capo_codeartifact.types.resource_policy.serialize_json(
23
+ value["policy"]
24
+ )
25
+ return out
26
+
27
+
28
+ def deserialize_json(data: dict) -> PutDomainPermissionsPolicyResult:
29
+ out: PutDomainPermissionsPolicyResult = {} # type: ignore[typeddict-item]
30
+ if data.get("policy") is not None:
31
+ import capo_codeartifact.types.resource_policy
32
+
33
+ out["policy"] = capo_codeartifact.types.resource_policy.deserialize_json(
34
+ data["policy"]
35
+ )
36
+ return out
@@ -0,0 +1,65 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PutPackageOriginConfigurationRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_codeartifact.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_codeartifact.types.account_id
11
+ import capo_codeartifact.types.domain_name
12
+ import capo_codeartifact.types.package_format
13
+ import capo_codeartifact.types.package_name
14
+ import capo_codeartifact.types.package_namespace
15
+ import capo_codeartifact.types.package_origin_restrictions
16
+ import capo_codeartifact.types.repository_name
17
+
18
+
19
+ class PutPackageOriginConfigurationRequest(TypedDict, closed=True):
20
+ domain: "capo_codeartifact.types.domain_name.DomainName"
21
+ """<p>The name of the domain that contains the repository that contains the package.</p>"""
22
+ domain_owner: NotRequired["capo_codeartifact.types.account_id.AccountId"]
23
+ """<p> The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces. </p>"""
24
+ repository: "capo_codeartifact.types.repository_name.RepositoryName"
25
+ """<p>The name of the repository that contains the package.</p>"""
26
+ format: "capo_codeartifact.types.package_format.PackageFormat"
27
+ """<p>A format that specifies the type of the package to be updated.</p>"""
28
+ namespace: NotRequired["capo_codeartifact.types.package_namespace.PackageNamespace"]
29
+ """<p>The namespace of the package to be updated. The package component that specifies its namespace depends on its type. For example:</p> <ul> <li> <p> The namespace of a Maven package version is its <code>groupId</code>. </p> </li> <li> <p> The namespace of an npm or Swift package version is its <code>scope</code>. </p> </li> <li> <p>The namespace of a generic package is its <code>namespace</code>.</p> </li> <li> <p> Python, NuGet, Ruby, and Cargo package versions do not contain a corresponding component, package versions of those formats do not have a namespace. </p> </li> </ul>"""
30
+ package: "capo_codeartifact.types.package_name.PackageName"
31
+ """<p>The name of the package to be updated.</p>"""
32
+ restrictions: (
33
+ "capo_codeartifact.types.package_origin_restrictions.PackageOriginRestrictions"
34
+ )
35
+ r"""<p>A <a href=\"https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html\">PackageOriginRestrictions</a> object that contains information about the <code>upstream</code> and <code>publish</code> package origin restrictions. The <code>upstream</code> restriction determines if new package versions can be ingested or retained from external connections or upstream repositories. The <code>publish</code> restriction determines if new package versions can be published directly to the repository.</p> <p>You must include both the desired <code>upstream</code> and <code>publish</code> restrictions.</p>"""
36
+
37
+
38
+ # --- restJson1 ser/de ---
39
+ def serialize_json(value: PutPackageOriginConfigurationRequest) -> dict:
40
+ out: dict = {}
41
+ import capo_codeartifact.types.package_origin_restrictions
42
+
43
+ out["restrictions"] = (
44
+ capo_codeartifact.types.package_origin_restrictions.serialize_json(
45
+ value["restrictions"]
46
+ )
47
+ )
48
+ return out
49
+
50
+
51
+ def deserialize_json(data: dict) -> PutPackageOriginConfigurationRequest:
52
+ out: PutPackageOriginConfigurationRequest = {} # type: ignore[typeddict-item]
53
+ if data.get("restrictions") is not None:
54
+ import capo_codeartifact.types.package_origin_restrictions
55
+
56
+ out["restrictions"] = (
57
+ capo_codeartifact.types.package_origin_restrictions.deserialize_json(
58
+ data["restrictions"]
59
+ )
60
+ )
61
+ else:
62
+ raise DeserializationError(
63
+ "PutPackageOriginConfigurationRequest.restrictions required"
64
+ )
65
+ return out
@@ -0,0 +1,42 @@
1
+ """Generated from Smithy shape ``com.amazonaws.codeartifact#PutPackageOriginConfigurationResult``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_codeartifact.types.package_origin_configuration
9
+
10
+
11
+ class PutPackageOriginConfigurationResult(TypedDict, closed=True):
12
+ origin_configuration: NotRequired[
13
+ "capo_codeartifact.types.package_origin_configuration.PackageOriginConfiguration"
14
+ ]
15
+ r"""<p>A <a href=\"https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginConfiguration.html\">PackageOriginConfiguration</a> object that describes the origin configuration set for the package. It contains a <a href=\"https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageOriginRestrictions.html\">PackageOriginRestrictions</a> object that describes how new versions of the package can be introduced to the repository.</p>"""
16
+
17
+
18
+ # --- restJson1 ser/de ---
19
+ def serialize_json(value: PutPackageOriginConfigurationResult) -> dict:
20
+ out: dict = {}
21
+ if "origin_configuration" in value:
22
+ import capo_codeartifact.types.package_origin_configuration
23
+
24
+ out["originConfiguration"] = (
25
+ capo_codeartifact.types.package_origin_configuration.serialize_json(
26
+ value["origin_configuration"]
27
+ )
28
+ )
29
+ return out
30
+
31
+
32
+ def deserialize_json(data: dict) -> PutPackageOriginConfigurationResult:
33
+ out: PutPackageOriginConfigurationResult = {} # type: ignore[typeddict-item]
34
+ if data.get("originConfiguration") is not None:
35
+ import capo_codeartifact.types.package_origin_configuration
36
+
37
+ out["origin_configuration"] = (
38
+ capo_codeartifact.types.package_origin_configuration.deserialize_json(
39
+ data["originConfiguration"]
40
+ )
41
+ )
42
+ return out