capo-lambda 0.5.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 (681) hide show
  1. capo_lambda/__init__.py +52 -0
  2. capo_lambda/_async.py +25 -0
  3. capo_lambda/_auth/_identity.py +16 -0
  4. capo_lambda/_auth/_providers.py +318 -0
  5. capo_lambda/_auth/_signers.py +84 -0
  6. capo_lambda/_auth/_sigv4.py +382 -0
  7. capo_lambda/_auth/_zapros_handler.py +62 -0
  8. capo_lambda/_iter.py +113 -0
  9. capo_lambda/_operations/aws_gir_api_service/add_layer_version_permission.py +169 -0
  10. capo_lambda/_operations/aws_gir_api_service/add_permission.py +168 -0
  11. capo_lambda/_operations/aws_gir_api_service/checkpoint_durable_execution.py +150 -0
  12. capo_lambda/_operations/aws_gir_api_service/create_alias.py +152 -0
  13. capo_lambda/_operations/aws_gir_api_service/create_capacity_provider.py +157 -0
  14. capo_lambda/_operations/aws_gir_api_service/create_code_signing_config.py +140 -0
  15. capo_lambda/_operations/aws_gir_api_service/create_event_source_mapping.py +173 -0
  16. capo_lambda/_operations/aws_gir_api_service/create_function.py +208 -0
  17. capo_lambda/_operations/aws_gir_api_service/create_function_url_config.py +158 -0
  18. capo_lambda/_operations/aws_gir_api_service/delete_alias.py +123 -0
  19. capo_lambda/_operations/aws_gir_api_service/delete_capacity_provider.py +156 -0
  20. capo_lambda/_operations/aws_gir_api_service/delete_code_signing_config.py +146 -0
  21. capo_lambda/_operations/aws_gir_api_service/delete_event_source_mapping.py +176 -0
  22. capo_lambda/_operations/aws_gir_api_service/delete_function.py +148 -0
  23. capo_lambda/_operations/aws_gir_api_service/delete_function_code_signing_config.py +133 -0
  24. capo_lambda/_operations/aws_gir_api_service/delete_function_concurrency.py +125 -0
  25. capo_lambda/_operations/aws_gir_api_service/delete_function_event_invoke_config.py +130 -0
  26. capo_lambda/_operations/aws_gir_api_service/delete_function_url_config.py +122 -0
  27. capo_lambda/_operations/aws_gir_api_service/delete_layer_version.py +114 -0
  28. capo_lambda/_operations/aws_gir_api_service/delete_provisioned_concurrency_config.py +130 -0
  29. capo_lambda/_operations/aws_gir_api_service/get_account_settings.py +139 -0
  30. capo_lambda/_operations/aws_gir_api_service/get_alias.py +147 -0
  31. capo_lambda/_operations/aws_gir_api_service/get_capacity_provider.py +151 -0
  32. capo_lambda/_operations/aws_gir_api_service/get_code_signing_config.py +146 -0
  33. capo_lambda/_operations/aws_gir_api_service/get_durable_execution.py +154 -0
  34. capo_lambda/_operations/aws_gir_api_service/get_durable_execution_history.py +158 -0
  35. capo_lambda/_operations/aws_gir_api_service/get_durable_execution_state.py +151 -0
  36. capo_lambda/_operations/aws_gir_api_service/get_event_source_mapping.py +166 -0
  37. capo_lambda/_operations/aws_gir_api_service/get_function.py +154 -0
  38. capo_lambda/_operations/aws_gir_api_service/get_function_code_signing_config.py +148 -0
  39. capo_lambda/_operations/aws_gir_api_service/get_function_concurrency.py +145 -0
  40. capo_lambda/_operations/aws_gir_api_service/get_function_configuration.py +172 -0
  41. capo_lambda/_operations/aws_gir_api_service/get_function_event_invoke_config.py +156 -0
  42. capo_lambda/_operations/aws_gir_api_service/get_function_recursion_config.py +149 -0
  43. capo_lambda/_operations/aws_gir_api_service/get_function_scaling_config.py +151 -0
  44. capo_lambda/_operations/aws_gir_api_service/get_function_url_config.py +150 -0
  45. capo_lambda/_operations/aws_gir_api_service/get_layer_version.py +156 -0
  46. capo_lambda/_operations/aws_gir_api_service/get_layer_version_by_arn.py +152 -0
  47. capo_lambda/_operations/aws_gir_api_service/get_layer_version_policy.py +149 -0
  48. capo_lambda/_operations/aws_gir_api_service/get_policy.py +145 -0
  49. capo_lambda/_operations/aws_gir_api_service/get_provisioned_concurrency_config.py +156 -0
  50. capo_lambda/_operations/aws_gir_api_service/get_runtime_management_config.py +151 -0
  51. capo_lambda/_operations/aws_gir_api_service/invoke.py +342 -0
  52. capo_lambda/_operations/aws_gir_api_service/invoke_async.py +153 -0
  53. capo_lambda/_operations/aws_gir_api_service/invoke_with_response_stream.py +346 -0
  54. capo_lambda/_operations/aws_gir_api_service/list_aliases.py +154 -0
  55. capo_lambda/_operations/aws_gir_api_service/list_capacity_providers.py +146 -0
  56. capo_lambda/_operations/aws_gir_api_service/list_code_signing_configs.py +142 -0
  57. capo_lambda/_operations/aws_gir_api_service/list_durable_executions_by_function.py +166 -0
  58. capo_lambda/_operations/aws_gir_api_service/list_event_source_mappings.py +152 -0
  59. capo_lambda/_operations/aws_gir_api_service/list_function_event_invoke_configs.py +153 -0
  60. capo_lambda/_operations/aws_gir_api_service/list_function_url_configs.py +154 -0
  61. capo_lambda/_operations/aws_gir_api_service/list_function_versions_by_capacity_provider.py +155 -0
  62. capo_lambda/_operations/aws_gir_api_service/list_functions.py +150 -0
  63. capo_lambda/_operations/aws_gir_api_service/list_functions_by_code_signing_config.py +150 -0
  64. capo_lambda/_operations/aws_gir_api_service/list_layer_versions.py +160 -0
  65. capo_lambda/_operations/aws_gir_api_service/list_layers.py +147 -0
  66. capo_lambda/_operations/aws_gir_api_service/list_provisioned_concurrency_configs.py +153 -0
  67. capo_lambda/_operations/aws_gir_api_service/list_tags.py +144 -0
  68. capo_lambda/_operations/aws_gir_api_service/list_versions_by_function.py +154 -0
  69. capo_lambda/_operations/aws_gir_api_service/publish_layer_version.py +157 -0
  70. capo_lambda/_operations/aws_gir_api_service/publish_version.py +192 -0
  71. capo_lambda/_operations/aws_gir_api_service/put_function_code_signing_config.py +163 -0
  72. capo_lambda/_operations/aws_gir_api_service/put_function_concurrency.py +149 -0
  73. capo_lambda/_operations/aws_gir_api_service/put_function_event_invoke_config.py +166 -0
  74. capo_lambda/_operations/aws_gir_api_service/put_function_recursion_config.py +157 -0
  75. capo_lambda/_operations/aws_gir_api_service/put_function_scaling_config.py +160 -0
  76. capo_lambda/_operations/aws_gir_api_service/put_provisioned_concurrency_config.py +161 -0
  77. capo_lambda/_operations/aws_gir_api_service/put_runtime_management_config.py +159 -0
  78. capo_lambda/_operations/aws_gir_api_service/remove_layer_version_permission.py +132 -0
  79. capo_lambda/_operations/aws_gir_api_service/remove_permission.py +133 -0
  80. capo_lambda/_operations/aws_gir_api_service/send_durable_execution_callback_failure.py +151 -0
  81. capo_lambda/_operations/aws_gir_api_service/send_durable_execution_callback_heartbeat.py +144 -0
  82. capo_lambda/_operations/aws_gir_api_service/send_durable_execution_callback_success.py +151 -0
  83. capo_lambda/_operations/aws_gir_api_service/stop_durable_execution.py +158 -0
  84. capo_lambda/_operations/aws_gir_api_service/tag_resource.py +129 -0
  85. capo_lambda/_operations/aws_gir_api_service/untag_resource.py +128 -0
  86. capo_lambda/_operations/aws_gir_api_service/update_alias.py +160 -0
  87. capo_lambda/_operations/aws_gir_api_service/update_capacity_provider.py +160 -0
  88. capo_lambda/_operations/aws_gir_api_service/update_code_signing_config.py +151 -0
  89. capo_lambda/_operations/aws_gir_api_service/update_event_source_mapping.py +179 -0
  90. capo_lambda/_operations/aws_gir_api_service/update_function_code.py +203 -0
  91. capo_lambda/_operations/aws_gir_api_service/update_function_configuration.py +204 -0
  92. capo_lambda/_operations/aws_gir_api_service/update_function_event_invoke_config.py +166 -0
  93. capo_lambda/_operations/aws_gir_api_service/update_function_url_config.py +158 -0
  94. capo_lambda/_pagination.py +21 -0
  95. capo_lambda/_protocol/__init__.py +1 -0
  96. capo_lambda/_protocol/errors.py +59 -0
  97. capo_lambda/_protocol/eventstream.py +238 -0
  98. capo_lambda/_protocol/xml.py +27 -0
  99. capo_lambda/_resources/aws_gir_api_service/capacity_provider_resource.py +713 -0
  100. capo_lambda/_resources/aws_gir_api_service/code_signing_config_resource.py +656 -0
  101. capo_lambda/_resources/aws_gir_api_service/event_source_mapping.py +1163 -0
  102. capo_lambda/_resources/aws_gir_api_service/function.py +3923 -0
  103. capo_lambda/_resources/aws_gir_api_service/function_alias.py +670 -0
  104. capo_lambda/_resources/aws_gir_api_service/function_version_resource.py +303 -0
  105. capo_lambda/_resources/aws_gir_api_service/layer_resource.py +170 -0
  106. capo_lambda/_resources/aws_gir_api_service/layer_version.py +1022 -0
  107. capo_lambda/_resources/aws_gir_api_service/permission.py +389 -0
  108. capo_lambda/_resources/aws_gir_api_service/provisioned_concurrency_config.py +376 -0
  109. capo_lambda/_resources/aws_gir_api_service/resource_policy.py +19 -0
  110. capo_lambda/_rule_engine/__init__.py +0 -0
  111. capo_lambda/_rule_engine/_aws_partition.py +160 -0
  112. capo_lambda/_rule_engine/_endpoint_rule_set.py +136 -0
  113. capo_lambda/_rule_engine/_endpoint_runtime.py +389 -0
  114. capo_lambda/_services/_aws_config.py +152 -0
  115. capo_lambda/_services/_lambda.py +1388 -0
  116. capo_lambda/_services/_pipeline.py +198 -0
  117. capo_lambda/_services/async__lambda.py +1411 -0
  118. capo_lambda/errors/__init__.py +148 -0
  119. capo_lambda/errors/_base.py +94 -0
  120. capo_lambda/errors/callback_timeout_exception.py +54 -0
  121. capo_lambda/errors/capacity_provider_limit_exceeded_exception.py +54 -0
  122. capo_lambda/errors/code_signing_config_not_found_exception.py +53 -0
  123. capo_lambda/errors/code_storage_exceeded_exception.py +54 -0
  124. capo_lambda/errors/code_verification_failed_exception.py +53 -0
  125. capo_lambda/errors/durable_execution_already_started_exception.py +54 -0
  126. capo_lambda/errors/ec2_access_denied_exception.py +53 -0
  127. capo_lambda/errors/ec2_throttled_exception.py +53 -0
  128. capo_lambda/errors/ec2_unexpected_exception.py +58 -0
  129. capo_lambda/errors/efs_mount_connectivity_exception.py +53 -0
  130. capo_lambda/errors/efs_mount_failure_exception.py +53 -0
  131. capo_lambda/errors/efs_mount_timeout_exception.py +53 -0
  132. capo_lambda/errors/efsio_exception.py +53 -0
  133. capo_lambda/errors/eni_limit_reached_exception.py +53 -0
  134. capo_lambda/errors/function_versions_per_capacity_provider_limit_exceeded_exception.py +64 -0
  135. capo_lambda/errors/invalid_code_signature_exception.py +53 -0
  136. capo_lambda/errors/invalid_parameter_value_exception.py +55 -0
  137. capo_lambda/errors/invalid_request_content_exception.py +55 -0
  138. capo_lambda/errors/invalid_runtime_exception.py +53 -0
  139. capo_lambda/errors/invalid_security_group_id_exception.py +53 -0
  140. capo_lambda/errors/invalid_subnet_id_exception.py +53 -0
  141. capo_lambda/errors/invalid_zip_file_exception.py +53 -0
  142. capo_lambda/errors/kms_access_denied_exception.py +53 -0
  143. capo_lambda/errors/kms_disabled_exception.py +53 -0
  144. capo_lambda/errors/kms_invalid_state_exception.py +53 -0
  145. capo_lambda/errors/kms_not_found_exception.py +53 -0
  146. capo_lambda/errors/no_published_version_exception.py +54 -0
  147. capo_lambda/errors/policy_length_exceeded_exception.py +53 -0
  148. capo_lambda/errors/precondition_failed_exception.py +55 -0
  149. capo_lambda/errors/provisioned_concurrency_config_not_found_exception.py +53 -0
  150. capo_lambda/errors/recursive_invocation_exception.py +55 -0
  151. capo_lambda/errors/request_too_large_exception.py +53 -0
  152. capo_lambda/errors/resource_conflict_exception.py +55 -0
  153. capo_lambda/errors/resource_in_use_exception.py +53 -0
  154. capo_lambda/errors/resource_not_found_exception.py +53 -0
  155. capo_lambda/errors/resource_not_ready_exception.py +55 -0
  156. capo_lambda/errors/s3_files_mount_connectivity_exception.py +55 -0
  157. capo_lambda/errors/s3_files_mount_failure_exception.py +55 -0
  158. capo_lambda/errors/s3_files_mount_timeout_exception.py +55 -0
  159. capo_lambda/errors/serialized_request_entity_too_large_exception.py +54 -0
  160. capo_lambda/errors/service_exception.py +53 -0
  161. capo_lambda/errors/snap_start_exception.py +53 -0
  162. capo_lambda/errors/snap_start_not_ready_exception.py +53 -0
  163. capo_lambda/errors/snap_start_timeout_exception.py +53 -0
  164. capo_lambda/errors/subnet_ip_address_limit_reached_exception.py +53 -0
  165. capo_lambda/errors/too_many_requests_exception.py +69 -0
  166. capo_lambda/errors/unsupported_media_type_exception.py +53 -0
  167. capo_lambda/py.typed +0 -0
  168. capo_lambda/types/_prelude/blob.py +12 -0
  169. capo_lambda/types/_prelude/timestamp.py +12 -0
  170. capo_lambda/types/account_limit.py +62 -0
  171. capo_lambda/types/account_usage.py +36 -0
  172. capo_lambda/types/action.py +5 -0
  173. capo_lambda/types/add_layer_version_permission_request.py +69 -0
  174. capo_lambda/types/add_layer_version_permission_response.py +34 -0
  175. capo_lambda/types/add_permission_request.py +122 -0
  176. capo_lambda/types/add_permission_response.py +28 -0
  177. capo_lambda/types/additional_version.py +5 -0
  178. capo_lambda/types/additional_version_weights.py +27 -0
  179. capo_lambda/types/alias.py +5 -0
  180. capo_lambda/types/alias_configuration.py +77 -0
  181. capo_lambda/types/alias_list.py +27 -0
  182. capo_lambda/types/alias_routing_configuration.py +42 -0
  183. capo_lambda/types/allow_credentials.py +5 -0
  184. capo_lambda/types/allow_methods_list.py +17 -0
  185. capo_lambda/types/allow_origins_list.py +17 -0
  186. capo_lambda/types/allowed_publishers.py +47 -0
  187. capo_lambda/types/amazon_managed_kafka_event_source_config.py +49 -0
  188. capo_lambda/types/application_log_level.py +21 -0
  189. capo_lambda/types/architecture.py +17 -0
  190. capo_lambda/types/architectures_list.py +27 -0
  191. capo_lambda/types/arn.py +5 -0
  192. capo_lambda/types/attempt_count.py +5 -0
  193. capo_lambda/types/batch_size.py +5 -0
  194. capo_lambda/types/binary_operation_payload.py +15 -0
  195. capo_lambda/types/bisect_batch_on_function_error.py +5 -0
  196. capo_lambda/types/blob.py +15 -0
  197. capo_lambda/types/blob_stream.py +7 -0
  198. capo_lambda/types/boolean.py +5 -0
  199. capo_lambda/types/callback_details.py +46 -0
  200. capo_lambda/types/callback_failed_details.py +35 -0
  201. capo_lambda/types/callback_id.py +5 -0
  202. capo_lambda/types/callback_options.py +36 -0
  203. capo_lambda/types/callback_started_details.py +44 -0
  204. capo_lambda/types/callback_succeeded_details.py +35 -0
  205. capo_lambda/types/callback_timed_out_details.py +35 -0
  206. capo_lambda/types/capacity_provider.py +143 -0
  207. capo_lambda/types/capacity_provider_arn.py +5 -0
  208. capo_lambda/types/capacity_provider_config.py +45 -0
  209. capo_lambda/types/capacity_provider_max_v_cpu_count.py +5 -0
  210. capo_lambda/types/capacity_provider_name.py +5 -0
  211. capo_lambda/types/capacity_provider_permissions_config.py +37 -0
  212. capo_lambda/types/capacity_provider_predefined_metric_type.py +16 -0
  213. capo_lambda/types/capacity_provider_scaling_config.py +72 -0
  214. capo_lambda/types/capacity_provider_scaling_mode.py +17 -0
  215. capo_lambda/types/capacity_provider_scaling_policies_list.py +33 -0
  216. capo_lambda/types/capacity_provider_security_group_ids.py +19 -0
  217. capo_lambda/types/capacity_provider_state.py +19 -0
  218. capo_lambda/types/capacity_provider_subnet_ids.py +17 -0
  219. capo_lambda/types/capacity_provider_vpc_config.py +65 -0
  220. capo_lambda/types/capacity_providers_list.py +29 -0
  221. capo_lambda/types/chained_invoke_details.py +39 -0
  222. capo_lambda/types/chained_invoke_failed_details.py +35 -0
  223. capo_lambda/types/chained_invoke_options.py +38 -0
  224. capo_lambda/types/chained_invoke_started_details.py +67 -0
  225. capo_lambda/types/chained_invoke_stopped_details.py +35 -0
  226. capo_lambda/types/chained_invoke_succeeded_details.py +35 -0
  227. capo_lambda/types/chained_invoke_timed_out_details.py +35 -0
  228. capo_lambda/types/checkpoint_durable_execution_request.py +58 -0
  229. capo_lambda/types/checkpoint_durable_execution_response.py +52 -0
  230. capo_lambda/types/checkpoint_token.py +5 -0
  231. capo_lambda/types/checkpoint_updated_execution_state.py +43 -0
  232. capo_lambda/types/client_token.py +5 -0
  233. capo_lambda/types/code_signing_config.py +94 -0
  234. capo_lambda/types/code_signing_config_arn.py +5 -0
  235. capo_lambda/types/code_signing_config_id.py +5 -0
  236. capo_lambda/types/code_signing_config_list.py +29 -0
  237. capo_lambda/types/code_signing_policies.py +42 -0
  238. capo_lambda/types/code_signing_policy.py +17 -0
  239. capo_lambda/types/collection_name.py +5 -0
  240. capo_lambda/types/compatible_architectures.py +27 -0
  241. capo_lambda/types/compatible_runtimes.py +27 -0
  242. capo_lambda/types/concurrency.py +30 -0
  243. capo_lambda/types/context_details.py +46 -0
  244. capo_lambda/types/context_failed_details.py +35 -0
  245. capo_lambda/types/context_options.py +28 -0
  246. capo_lambda/types/context_started_details.py +18 -0
  247. capo_lambda/types/context_succeeded_details.py +35 -0
  248. capo_lambda/types/cors.py +96 -0
  249. capo_lambda/types/create_alias_request.py +72 -0
  250. capo_lambda/types/create_capacity_provider_request.py +139 -0
  251. capo_lambda/types/create_capacity_provider_response.py +41 -0
  252. capo_lambda/types/create_code_signing_config_request.py +82 -0
  253. capo_lambda/types/create_code_signing_config_response.py +43 -0
  254. capo_lambda/types/create_event_source_mapping_request.py +426 -0
  255. capo_lambda/types/create_function_request.py +385 -0
  256. capo_lambda/types/create_function_url_config_request.py +73 -0
  257. capo_lambda/types/create_function_url_config_response.py +95 -0
  258. capo_lambda/types/database_name.py +5 -0
  259. capo_lambda/types/date.py +15 -0
  260. capo_lambda/types/dead_letter_config.py +28 -0
  261. capo_lambda/types/delete_alias_request.py +27 -0
  262. capo_lambda/types/delete_capacity_provider_request.py +26 -0
  263. capo_lambda/types/delete_capacity_provider_response.py +41 -0
  264. capo_lambda/types/delete_code_signing_config_request.py +26 -0
  265. capo_lambda/types/delete_code_signing_config_response.py +18 -0
  266. capo_lambda/types/delete_event_source_mapping_request.py +24 -0
  267. capo_lambda/types/delete_function_code_signing_config_request.py +24 -0
  268. capo_lambda/types/delete_function_concurrency_request.py +24 -0
  269. capo_lambda/types/delete_function_event_invoke_config_request.py +29 -0
  270. capo_lambda/types/delete_function_request.py +29 -0
  271. capo_lambda/types/delete_function_response.py +24 -0
  272. capo_lambda/types/delete_function_url_config_request.py +29 -0
  273. capo_lambda/types/delete_layer_version_request.py +27 -0
  274. capo_lambda/types/delete_provisioned_concurrency_config_request.py +27 -0
  275. capo_lambda/types/description.py +5 -0
  276. capo_lambda/types/destination_arn.py +5 -0
  277. capo_lambda/types/destination_config.py +51 -0
  278. capo_lambda/types/document_db_event_source_config.py +50 -0
  279. capo_lambda/types/durable_config.py +39 -0
  280. capo_lambda/types/durable_execution_arn.py +5 -0
  281. capo_lambda/types/durable_execution_name.py +5 -0
  282. capo_lambda/types/durable_executions.py +27 -0
  283. capo_lambda/types/duration_seconds.py +5 -0
  284. capo_lambda/types/enabled.py +5 -0
  285. capo_lambda/types/end_point_type.py +14 -0
  286. capo_lambda/types/endpoint.py +5 -0
  287. capo_lambda/types/endpoint_lists.py +17 -0
  288. capo_lambda/types/endpoints.py +37 -0
  289. capo_lambda/types/environment.py +38 -0
  290. capo_lambda/types/environment_error.py +35 -0
  291. capo_lambda/types/environment_response.py +53 -0
  292. capo_lambda/types/environment_variable_name.py +5 -0
  293. capo_lambda/types/environment_variable_value.py +5 -0
  294. capo_lambda/types/environment_variables.py +27 -0
  295. capo_lambda/types/ephemeral_storage.py +31 -0
  296. capo_lambda/types/ephemeral_storage_size.py +5 -0
  297. capo_lambda/types/error_data.py +5 -0
  298. capo_lambda/types/error_message.py +5 -0
  299. capo_lambda/types/error_object.py +57 -0
  300. capo_lambda/types/error_type.py +5 -0
  301. capo_lambda/types/event.py +584 -0
  302. capo_lambda/types/event_error.py +41 -0
  303. capo_lambda/types/event_id.py +5 -0
  304. capo_lambda/types/event_input.py +35 -0
  305. capo_lambda/types/event_result.py +35 -0
  306. capo_lambda/types/event_source_mapping_arn.py +5 -0
  307. capo_lambda/types/event_source_mapping_configuration.py +472 -0
  308. capo_lambda/types/event_source_mapping_logging_config.py +42 -0
  309. capo_lambda/types/event_source_mapping_metric.py +18 -0
  310. capo_lambda/types/event_source_mapping_metric_list.py +29 -0
  311. capo_lambda/types/event_source_mapping_metrics_config.py +42 -0
  312. capo_lambda/types/event_source_mapping_system_log_level.py +18 -0
  313. capo_lambda/types/event_source_mappings_list.py +33 -0
  314. capo_lambda/types/event_source_position.py +18 -0
  315. capo_lambda/types/event_source_token.py +5 -0
  316. capo_lambda/types/event_type.py +39 -0
  317. capo_lambda/types/events.py +27 -0
  318. capo_lambda/types/execution.py +95 -0
  319. capo_lambda/types/execution_details.py +28 -0
  320. capo_lambda/types/execution_environment_memory_gi_b_per_v_cpu.py +5 -0
  321. capo_lambda/types/execution_failed_details.py +35 -0
  322. capo_lambda/types/execution_started_details.py +43 -0
  323. capo_lambda/types/execution_status.py +20 -0
  324. capo_lambda/types/execution_status_list.py +29 -0
  325. capo_lambda/types/execution_stopped_details.py +35 -0
  326. capo_lambda/types/execution_succeeded_details.py +35 -0
  327. capo_lambda/types/execution_timed_out_details.py +32 -0
  328. capo_lambda/types/execution_timeout.py +5 -0
  329. capo_lambda/types/execution_timestamp.py +15 -0
  330. capo_lambda/types/file_system_arn.py +5 -0
  331. capo_lambda/types/file_system_config.py +39 -0
  332. capo_lambda/types/file_system_config_list.py +29 -0
  333. capo_lambda/types/filter.py +28 -0
  334. capo_lambda/types/filter_criteria.py +32 -0
  335. capo_lambda/types/filter_criteria_error.py +39 -0
  336. capo_lambda/types/filter_criteria_error_code.py +5 -0
  337. capo_lambda/types/filter_criteria_error_message.py +5 -0
  338. capo_lambda/types/filter_list.py +27 -0
  339. capo_lambda/types/full_document.py +17 -0
  340. capo_lambda/types/function_arn.py +5 -0
  341. capo_lambda/types/function_arn_list.py +17 -0
  342. capo_lambda/types/function_code.py +69 -0
  343. capo_lambda/types/function_code_location.py +52 -0
  344. capo_lambda/types/function_configuration.py +513 -0
  345. capo_lambda/types/function_event_invoke_config.py +80 -0
  346. capo_lambda/types/function_event_invoke_config_list.py +31 -0
  347. capo_lambda/types/function_list.py +29 -0
  348. capo_lambda/types/function_name.py +5 -0
  349. capo_lambda/types/function_response_type.py +14 -0
  350. capo_lambda/types/function_response_type_list.py +29 -0
  351. capo_lambda/types/function_scaling_config.py +38 -0
  352. capo_lambda/types/function_scaling_config_execution_environments.py +5 -0
  353. capo_lambda/types/function_url.py +5 -0
  354. capo_lambda/types/function_url_auth_type.py +17 -0
  355. capo_lambda/types/function_url_config.py +96 -0
  356. capo_lambda/types/function_url_config_list.py +29 -0
  357. capo_lambda/types/function_url_qualifier.py +5 -0
  358. capo_lambda/types/function_version.py +14 -0
  359. capo_lambda/types/function_version_latest_published.py +14 -0
  360. capo_lambda/types/function_versions_by_capacity_provider_list.py +37 -0
  361. capo_lambda/types/function_versions_by_capacity_provider_list_item.py +47 -0
  362. capo_lambda/types/get_account_settings_request.py +18 -0
  363. capo_lambda/types/get_account_settings_response.py +51 -0
  364. capo_lambda/types/get_alias_request.py +27 -0
  365. capo_lambda/types/get_capacity_provider_request.py +26 -0
  366. capo_lambda/types/get_capacity_provider_response.py +41 -0
  367. capo_lambda/types/get_code_signing_config_request.py +26 -0
  368. capo_lambda/types/get_code_signing_config_response.py +43 -0
  369. capo_lambda/types/get_durable_execution_history_request.py +38 -0
  370. capo_lambda/types/get_durable_execution_history_response.py +42 -0
  371. capo_lambda/types/get_durable_execution_request.py +24 -0
  372. capo_lambda/types/get_durable_execution_response.py +150 -0
  373. capo_lambda/types/get_durable_execution_state_request.py +33 -0
  374. capo_lambda/types/get_durable_execution_state_response.py +46 -0
  375. capo_lambda/types/get_event_source_mapping_request.py +24 -0
  376. capo_lambda/types/get_function_code_signing_config_request.py +24 -0
  377. capo_lambda/types/get_function_code_signing_config_response.py +45 -0
  378. capo_lambda/types/get_function_concurrency_request.py +24 -0
  379. capo_lambda/types/get_function_concurrency_response.py +30 -0
  380. capo_lambda/types/get_function_configuration_request.py +29 -0
  381. capo_lambda/types/get_function_event_invoke_config_request.py +29 -0
  382. capo_lambda/types/get_function_recursion_config_request.py +24 -0
  383. capo_lambda/types/get_function_recursion_config_response.py +36 -0
  384. capo_lambda/types/get_function_request.py +29 -0
  385. capo_lambda/types/get_function_response.py +96 -0
  386. capo_lambda/types/get_function_scaling_config_request.py +29 -0
  387. capo_lambda/types/get_function_scaling_config_response.py +69 -0
  388. capo_lambda/types/get_function_url_config_request.py +29 -0
  389. capo_lambda/types/get_function_url_config_response.py +100 -0
  390. capo_lambda/types/get_layer_version_by_arn_request.py +24 -0
  391. capo_lambda/types/get_layer_version_policy_request.py +27 -0
  392. capo_lambda/types/get_layer_version_policy_response.py +34 -0
  393. capo_lambda/types/get_layer_version_request.py +27 -0
  394. capo_lambda/types/get_layer_version_response.py +127 -0
  395. capo_lambda/types/get_policy_request.py +29 -0
  396. capo_lambda/types/get_policy_response.py +34 -0
  397. capo_lambda/types/get_provisioned_concurrency_config_request.py +27 -0
  398. capo_lambda/types/get_provisioned_concurrency_config_response.py +94 -0
  399. capo_lambda/types/get_runtime_management_config_request.py +29 -0
  400. capo_lambda/types/get_runtime_management_config_response.py +56 -0
  401. capo_lambda/types/handler.py +5 -0
  402. capo_lambda/types/header.py +5 -0
  403. capo_lambda/types/headers_list.py +17 -0
  404. capo_lambda/types/http_status.py +5 -0
  405. capo_lambda/types/image_config.py +55 -0
  406. capo_lambda/types/image_config_error.py +35 -0
  407. capo_lambda/types/image_config_response.py +51 -0
  408. capo_lambda/types/include_execution_data.py +5 -0
  409. capo_lambda/types/input_payload.py +5 -0
  410. capo_lambda/types/instance_requirements.py +77 -0
  411. capo_lambda/types/instance_type.py +5 -0
  412. capo_lambda/types/instance_type_set.py +17 -0
  413. capo_lambda/types/integer.py +5 -0
  414. capo_lambda/types/invocation_completed_details.py +75 -0
  415. capo_lambda/types/invocation_request.py +57 -0
  416. capo_lambda/types/invocation_response.py +48 -0
  417. capo_lambda/types/invocation_type.py +18 -0
  418. capo_lambda/types/invoke_async_request.py +16 -0
  419. capo_lambda/types/invoke_async_response.py +24 -0
  420. capo_lambda/types/invoke_mode.py +17 -0
  421. capo_lambda/types/invoke_response_stream_update.py +42 -0
  422. capo_lambda/types/invoke_with_response_stream_complete_event.py +55 -0
  423. capo_lambda/types/invoke_with_response_stream_request.py +54 -0
  424. capo_lambda/types/invoke_with_response_stream_response.py +24 -0
  425. capo_lambda/types/invoke_with_response_stream_response_event.py +78 -0
  426. capo_lambda/types/invoked_via_function_url.py +5 -0
  427. capo_lambda/types/item_count.py +5 -0
  428. capo_lambda/types/kafka_schema_registry_access_config.py +47 -0
  429. capo_lambda/types/kafka_schema_registry_access_config_list.py +33 -0
  430. capo_lambda/types/kafka_schema_registry_auth_type.py +18 -0
  431. capo_lambda/types/kafka_schema_registry_config.py +93 -0
  432. capo_lambda/types/kafka_schema_validation_attribute.py +17 -0
  433. capo_lambda/types/kafka_schema_validation_config.py +42 -0
  434. capo_lambda/types/kafka_schema_validation_config_list.py +33 -0
  435. capo_lambda/types/kms_key_arn.py +5 -0
  436. capo_lambda/types/kms_key_arn_non_empty.py +5 -0
  437. capo_lambda/types/lambda_managed_instances_capacity_provider_config.py +59 -0
  438. capo_lambda/types/last_update_status.py +18 -0
  439. capo_lambda/types/last_update_status_reason.py +5 -0
  440. capo_lambda/types/last_update_status_reason_code.py +49 -0
  441. capo_lambda/types/layer.py +49 -0
  442. capo_lambda/types/layer_arn.py +5 -0
  443. capo_lambda/types/layer_list.py +17 -0
  444. capo_lambda/types/layer_name.py +5 -0
  445. capo_lambda/types/layer_permission_allowed_action.py +5 -0
  446. capo_lambda/types/layer_permission_allowed_principal.py +5 -0
  447. capo_lambda/types/layer_version_arn.py +5 -0
  448. capo_lambda/types/layer_version_content_input.py +55 -0
  449. capo_lambda/types/layer_version_content_output.py +54 -0
  450. capo_lambda/types/layer_version_number.py +5 -0
  451. capo_lambda/types/layer_versions_list.py +29 -0
  452. capo_lambda/types/layer_versions_list_item.py +101 -0
  453. capo_lambda/types/layers_list.py +27 -0
  454. capo_lambda/types/layers_list_item.py +56 -0
  455. capo_lambda/types/layers_reference_list.py +27 -0
  456. capo_lambda/types/license_info.py +5 -0
  457. capo_lambda/types/list_aliases_request.py +35 -0
  458. capo_lambda/types/list_aliases_response.py +39 -0
  459. capo_lambda/types/list_capacity_providers_request.py +32 -0
  460. capo_lambda/types/list_capacity_providers_response.py +52 -0
  461. capo_lambda/types/list_code_signing_configs_request.py +27 -0
  462. capo_lambda/types/list_code_signing_configs_response.py +49 -0
  463. capo_lambda/types/list_durable_executions_by_function_request.py +55 -0
  464. capo_lambda/types/list_durable_executions_by_function_response.py +47 -0
  465. capo_lambda/types/list_event_source_mappings_request.py +35 -0
  466. capo_lambda/types/list_event_source_mappings_response.py +49 -0
  467. capo_lambda/types/list_function_event_invoke_configs_request.py +32 -0
  468. capo_lambda/types/list_function_event_invoke_configs_response.py +49 -0
  469. capo_lambda/types/list_function_url_configs_request.py +30 -0
  470. capo_lambda/types/list_function_url_configs_response.py +54 -0
  471. capo_lambda/types/list_function_versions_by_capacity_provider_request.py +32 -0
  472. capo_lambda/types/list_function_versions_by_capacity_provider_response.py +62 -0
  473. capo_lambda/types/list_functions_by_code_signing_config_request.py +32 -0
  474. capo_lambda/types/list_functions_by_code_signing_config_response.py +43 -0
  475. capo_lambda/types/list_functions_request.py +33 -0
  476. capo_lambda/types/list_functions_response.py +43 -0
  477. capo_lambda/types/list_layer_versions_request.py +36 -0
  478. capo_lambda/types/list_layer_versions_response.py +45 -0
  479. capo_lambda/types/list_layers_request.py +33 -0
  480. capo_lambda/types/list_layers_response.py +39 -0
  481. capo_lambda/types/list_provisioned_concurrency_configs_request.py +32 -0
  482. capo_lambda/types/list_provisioned_concurrency_configs_response.py +49 -0
  483. capo_lambda/types/list_tags_request.py +24 -0
  484. capo_lambda/types/list_tags_response.py +32 -0
  485. capo_lambda/types/list_versions_by_function_request.py +30 -0
  486. capo_lambda/types/list_versions_by_function_response.py +43 -0
  487. capo_lambda/types/local_mount_path.py +5 -0
  488. capo_lambda/types/log_format.py +17 -0
  489. capo_lambda/types/log_group.py +5 -0
  490. capo_lambda/types/log_type.py +17 -0
  491. capo_lambda/types/logging_config.py +79 -0
  492. capo_lambda/types/long.py +5 -0
  493. capo_lambda/types/master_region.py +5 -0
  494. capo_lambda/types/max_age.py +5 -0
  495. capo_lambda/types/max_fifty_list_items.py +5 -0
  496. capo_lambda/types/max_function_event_invoke_config_list_items.py +5 -0
  497. capo_lambda/types/max_items.py +5 -0
  498. capo_lambda/types/max_layer_list_items.py +5 -0
  499. capo_lambda/types/max_list_items.py +5 -0
  500. capo_lambda/types/max_provisioned_concurrency_config_list_items.py +5 -0
  501. capo_lambda/types/maximum_batching_window_in_seconds.py +5 -0
  502. capo_lambda/types/maximum_concurrency.py +5 -0
  503. capo_lambda/types/maximum_event_age_in_seconds.py +5 -0
  504. capo_lambda/types/maximum_number_of_pollers.py +5 -0
  505. capo_lambda/types/maximum_record_age_in_seconds.py +5 -0
  506. capo_lambda/types/maximum_retry_attempts.py +5 -0
  507. capo_lambda/types/maximum_retry_attempts_event_source_mapping.py +5 -0
  508. capo_lambda/types/memory_size.py +5 -0
  509. capo_lambda/types/method.py +5 -0
  510. capo_lambda/types/metric_target_value.py +5 -0
  511. capo_lambda/types/minimum_number_of_pollers.py +5 -0
  512. capo_lambda/types/name_spaced_function_arn.py +5 -0
  513. capo_lambda/types/namespaced_function_name.py +5 -0
  514. capo_lambda/types/namespaced_statement_id.py +5 -0
  515. capo_lambda/types/non_negative_integer.py +5 -0
  516. capo_lambda/types/nullable_boolean.py +5 -0
  517. capo_lambda/types/numeric_latest_published_or_alias_qualifier.py +5 -0
  518. capo_lambda/types/on_failure.py +28 -0
  519. capo_lambda/types/on_success.py +28 -0
  520. capo_lambda/types/operation.py +205 -0
  521. capo_lambda/types/operation_action.py +20 -0
  522. capo_lambda/types/operation_id.py +5 -0
  523. capo_lambda/types/operation_name.py +5 -0
  524. capo_lambda/types/operation_payload.py +5 -0
  525. capo_lambda/types/operation_status.py +23 -0
  526. capo_lambda/types/operation_sub_type.py +5 -0
  527. capo_lambda/types/operation_type.py +21 -0
  528. capo_lambda/types/operation_update.py +174 -0
  529. capo_lambda/types/operation_updates.py +27 -0
  530. capo_lambda/types/operations.py +27 -0
  531. capo_lambda/types/organization_id.py +5 -0
  532. capo_lambda/types/origin.py +5 -0
  533. capo_lambda/types/output_payload.py +5 -0
  534. capo_lambda/types/package_type.py +17 -0
  535. capo_lambda/types/parallelization_factor.py +5 -0
  536. capo_lambda/types/pattern.py +5 -0
  537. capo_lambda/types/per_execution_environment_max_concurrency.py +5 -0
  538. capo_lambda/types/positive_integer.py +5 -0
  539. capo_lambda/types/principal.py +5 -0
  540. capo_lambda/types/principal_org_id.py +5 -0
  541. capo_lambda/types/provisioned_concurrency_config_list.py +37 -0
  542. capo_lambda/types/provisioned_concurrency_config_list_item.py +101 -0
  543. capo_lambda/types/provisioned_concurrency_status_enum.py +18 -0
  544. capo_lambda/types/provisioned_poller_config.py +48 -0
  545. capo_lambda/types/provisioned_poller_group_name.py +5 -0
  546. capo_lambda/types/publish_layer_version_request.py +98 -0
  547. capo_lambda/types/publish_layer_version_response.py +127 -0
  548. capo_lambda/types/publish_version_request.py +65 -0
  549. capo_lambda/types/published_function_qualifier.py +5 -0
  550. capo_lambda/types/put_function_code_signing_config_request.py +38 -0
  551. capo_lambda/types/put_function_code_signing_config_response.py +45 -0
  552. capo_lambda/types/put_function_concurrency_request.py +38 -0
  553. capo_lambda/types/put_function_event_invoke_config_request.py +66 -0
  554. capo_lambda/types/put_function_recursion_config_request.py +44 -0
  555. capo_lambda/types/put_function_recursion_config_response.py +36 -0
  556. capo_lambda/types/put_function_scaling_config_request.py +50 -0
  557. capo_lambda/types/put_function_scaling_config_response.py +36 -0
  558. capo_lambda/types/put_provisioned_concurrency_config_request.py +43 -0
  559. capo_lambda/types/put_provisioned_concurrency_config_response.py +94 -0
  560. capo_lambda/types/put_runtime_management_config_request.py +58 -0
  561. capo_lambda/types/put_runtime_management_config_response.py +60 -0
  562. capo_lambda/types/qualifier.py +5 -0
  563. capo_lambda/types/queue.py +5 -0
  564. capo_lambda/types/queues.py +17 -0
  565. capo_lambda/types/recursive_loop.py +17 -0
  566. capo_lambda/types/remove_layer_version_permission_request.py +33 -0
  567. capo_lambda/types/remove_permission_request.py +35 -0
  568. capo_lambda/types/replay_children.py +5 -0
  569. capo_lambda/types/reserved_concurrent_executions.py +5 -0
  570. capo_lambda/types/resource_arn.py +5 -0
  571. capo_lambda/types/response_streaming_invocation_type.py +17 -0
  572. capo_lambda/types/retention_period_in_days.py +5 -0
  573. capo_lambda/types/retry_details.py +38 -0
  574. capo_lambda/types/reverse_order.py +5 -0
  575. capo_lambda/types/role_arn.py +5 -0
  576. capo_lambda/types/runtime.py +61 -0
  577. capo_lambda/types/runtime_version_arn.py +5 -0
  578. capo_lambda/types/runtime_version_config.py +45 -0
  579. capo_lambda/types/runtime_version_error.py +35 -0
  580. capo_lambda/types/s3_bucket.py +5 -0
  581. capo_lambda/types/s3_key.py +5 -0
  582. capo_lambda/types/s3_object_version.py +5 -0
  583. capo_lambda/types/scaling_config.py +30 -0
  584. capo_lambda/types/schema_registry_event_record_format.py +17 -0
  585. capo_lambda/types/schema_registry_uri.py +5 -0
  586. capo_lambda/types/security_group_id.py +5 -0
  587. capo_lambda/types/security_group_ids.py +19 -0
  588. capo_lambda/types/self_managed_event_source.py +36 -0
  589. capo_lambda/types/self_managed_kafka_event_source_config.py +49 -0
  590. capo_lambda/types/send_durable_execution_callback_failure_request.py +35 -0
  591. capo_lambda/types/send_durable_execution_callback_failure_response.py +18 -0
  592. capo_lambda/types/send_durable_execution_callback_heartbeat_request.py +24 -0
  593. capo_lambda/types/send_durable_execution_callback_heartbeat_response.py +18 -0
  594. capo_lambda/types/send_durable_execution_callback_success_request.py +41 -0
  595. capo_lambda/types/send_durable_execution_callback_success_response.py +18 -0
  596. capo_lambda/types/sensitive_string.py +5 -0
  597. capo_lambda/types/signing_profile_version_arns.py +17 -0
  598. capo_lambda/types/snap_start.py +36 -0
  599. capo_lambda/types/snap_start_apply_on.py +17 -0
  600. capo_lambda/types/snap_start_optimization_status.py +17 -0
  601. capo_lambda/types/snap_start_response.py +57 -0
  602. capo_lambda/types/source_access_configuration.py +41 -0
  603. capo_lambda/types/source_access_configurations.py +29 -0
  604. capo_lambda/types/source_access_type.py +23 -0
  605. capo_lambda/types/source_owner.py +5 -0
  606. capo_lambda/types/stack_trace_entries.py +19 -0
  607. capo_lambda/types/stack_trace_entry.py +5 -0
  608. capo_lambda/types/state.py +23 -0
  609. capo_lambda/types/state_reason.py +5 -0
  610. capo_lambda/types/state_reason_code.py +53 -0
  611. capo_lambda/types/statement_id.py +5 -0
  612. capo_lambda/types/step_details.py +68 -0
  613. capo_lambda/types/step_failed_details.py +51 -0
  614. capo_lambda/types/step_options.py +30 -0
  615. capo_lambda/types/step_started_details.py +18 -0
  616. capo_lambda/types/step_succeeded_details.py +51 -0
  617. capo_lambda/types/stop_durable_execution_request.py +35 -0
  618. capo_lambda/types/stop_durable_execution_response.py +41 -0
  619. capo_lambda/types/string.py +5 -0
  620. capo_lambda/types/string_list.py +17 -0
  621. capo_lambda/types/subnet_id.py +5 -0
  622. capo_lambda/types/subnet_ids.py +17 -0
  623. capo_lambda/types/system_log_level.py +18 -0
  624. capo_lambda/types/tag_key.py +5 -0
  625. capo_lambda/types/tag_key_list.py +17 -0
  626. capo_lambda/types/tag_resource_request.py +38 -0
  627. capo_lambda/types/tag_value.py +5 -0
  628. capo_lambda/types/taggable_resource.py +5 -0
  629. capo_lambda/types/tags.py +26 -0
  630. capo_lambda/types/tags_error.py +39 -0
  631. capo_lambda/types/tags_error_code.py +5 -0
  632. capo_lambda/types/tags_error_message.py +5 -0
  633. capo_lambda/types/target_tracking_scaling_policy.py +53 -0
  634. capo_lambda/types/tenancy_config.py +41 -0
  635. capo_lambda/types/tenant_id.py +5 -0
  636. capo_lambda/types/tenant_isolation_mode.py +14 -0
  637. capo_lambda/types/throttle_reason.py +21 -0
  638. capo_lambda/types/timeout.py +5 -0
  639. capo_lambda/types/timestamp.py +5 -0
  640. capo_lambda/types/topic.py +5 -0
  641. capo_lambda/types/topics.py +17 -0
  642. capo_lambda/types/trace_header.py +28 -0
  643. capo_lambda/types/tracing_config.py +32 -0
  644. capo_lambda/types/tracing_config_response.py +32 -0
  645. capo_lambda/types/tracing_mode.py +17 -0
  646. capo_lambda/types/truncated.py +5 -0
  647. capo_lambda/types/tumbling_window_in_seconds.py +5 -0
  648. capo_lambda/types/unqualified_function_name.py +5 -0
  649. capo_lambda/types/unreserved_concurrent_executions.py +5 -0
  650. capo_lambda/types/untag_resource_request.py +27 -0
  651. capo_lambda/types/update_alias_request.py +71 -0
  652. capo_lambda/types/update_capacity_provider_request.py +47 -0
  653. capo_lambda/types/update_capacity_provider_response.py +41 -0
  654. capo_lambda/types/update_code_signing_config_request.py +73 -0
  655. capo_lambda/types/update_code_signing_config_response.py +43 -0
  656. capo_lambda/types/update_event_source_mapping_request.py +326 -0
  657. capo_lambda/types/update_function_code_request.py +129 -0
  658. capo_lambda/types/update_function_configuration_request.py +278 -0
  659. capo_lambda/types/update_function_event_invoke_config_request.py +66 -0
  660. capo_lambda/types/update_function_url_config_request.py +72 -0
  661. capo_lambda/types/update_function_url_config_response.py +104 -0
  662. capo_lambda/types/update_runtime_on.py +18 -0
  663. capo_lambda/types/uri.py +5 -0
  664. capo_lambda/types/version.py +5 -0
  665. capo_lambda/types/version_with_latest_published.py +5 -0
  666. capo_lambda/types/vpc_config.py +64 -0
  667. capo_lambda/types/vpc_config_response.py +71 -0
  668. capo_lambda/types/vpc_id.py +5 -0
  669. capo_lambda/types/wait_cancelled_details.py +32 -0
  670. capo_lambda/types/wait_details.py +42 -0
  671. capo_lambda/types/wait_options.py +28 -0
  672. capo_lambda/types/wait_started_details.py +51 -0
  673. capo_lambda/types/wait_succeeded_details.py +28 -0
  674. capo_lambda/types/weight.py +5 -0
  675. capo_lambda/types/working_directory.py +5 -0
  676. capo_lambda/types/x_amzn_trace_id.py +5 -0
  677. capo_lambda-0.5.0.dist-info/METADATA +97 -0
  678. capo_lambda-0.5.0.dist-info/RECORD +681 -0
  679. capo_lambda-0.5.0.dist-info/WHEEL +5 -0
  680. capo_lambda-0.5.0.dist-info/licenses/LICENSE +21 -0
  681. capo_lambda-0.5.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1022 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, Optional
4
+
5
+ import capo_lambda._auth._signers
6
+ import capo_lambda._auth._sigv4
7
+ from capo_lambda._services._pipeline import (
8
+ AsyncOperationRequest,
9
+ AsyncOperationResponse,
10
+ OperationRequest,
11
+ OperationResponse,
12
+ aexecute_pipeline,
13
+ execute_pipeline,
14
+ )
15
+
16
+ if TYPE_CHECKING:
17
+ import capo_lambda.types.add_layer_version_permission_request
18
+ import capo_lambda.types.add_layer_version_permission_response
19
+ import capo_lambda.types.architecture
20
+ import capo_lambda.types.compatible_architectures
21
+ import capo_lambda.types.compatible_runtimes
22
+ import capo_lambda.types.delete_layer_version_request
23
+ import capo_lambda.types.description
24
+ import capo_lambda.types.get_layer_version_by_arn_request
25
+ import capo_lambda.types.get_layer_version_policy_request
26
+ import capo_lambda.types.get_layer_version_policy_response
27
+ import capo_lambda.types.get_layer_version_request
28
+ import capo_lambda.types.get_layer_version_response
29
+ import capo_lambda.types.layer_name
30
+ import capo_lambda.types.layer_permission_allowed_action
31
+ import capo_lambda.types.layer_permission_allowed_principal
32
+ import capo_lambda.types.layer_version_arn
33
+ import capo_lambda.types.layer_version_content_input
34
+ import capo_lambda.types.layer_version_number
35
+ import capo_lambda.types.license_info
36
+ import capo_lambda.types.list_layer_versions_request
37
+ import capo_lambda.types.list_layer_versions_response
38
+ import capo_lambda.types.max_layer_list_items
39
+ import capo_lambda.types.organization_id
40
+ import capo_lambda.types.publish_layer_version_request
41
+ import capo_lambda.types.publish_layer_version_response
42
+ import capo_lambda.types.remove_layer_version_permission_request
43
+ import capo_lambda.types.runtime
44
+ import capo_lambda.types.statement_id
45
+ import capo_lambda.types.string
46
+ from capo_lambda._services._lambda import LambdaClient, LambdaClientConfig
47
+ from capo_lambda._services.async__lambda import (
48
+ AsyncLambdaClient,
49
+ AsyncLambdaClientConfig,
50
+ )
51
+
52
+
53
+ class LayerVersion:
54
+ def __init__(self, service: LambdaClient) -> None:
55
+ self._service = service
56
+
57
+ def list(
58
+ self,
59
+ layer_name: "capo_lambda.types.layer_name.LayerName",
60
+ *,
61
+ config_overrides: Optional[LambdaClientConfig] = None,
62
+ compatible_runtime: Optional["capo_lambda.types.runtime.Runtime"] = None,
63
+ marker: Optional["capo_lambda.types.string.String"] = None,
64
+ max_items: Optional[
65
+ "capo_lambda.types.max_layer_list_items.MaxLayerListItems"
66
+ ] = None,
67
+ compatible_architecture: Optional[
68
+ "capo_lambda.types.architecture.Architecture"
69
+ ] = None,
70
+ ) -> "capo_lambda.types.list_layer_versions_response.ListLayerVersionsResponse":
71
+ r"""<p>Lists the versions of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. Versions that have been deleted aren't listed. Specify a <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html\">runtime identifier</a> to list only versions that indicate that they're compatible with that runtime. Specify a compatible architecture to include only layer versions that are compatible with that architecture.</p>
72
+
73
+ Args:
74
+ compatible_runtime: <p>A runtime identifier.</p> <p>The following list includes deprecated runtimes. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels\">Runtime use after deprecation</a>.</p> <p>For a list of all currently supported runtimes, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported\">Supported runtimes</a>.</p>
75
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
76
+ marker: <p>A pagination token returned by a previous call.</p>
77
+ max_items: <p>The maximum number of versions to return.</p>
78
+ compatible_architecture: <p>The compatible <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html\">instruction set architecture</a>.</p>
79
+
80
+ Raises:
81
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
82
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
83
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
84
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
85
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
86
+
87
+ Examples:
88
+ To list versions of a layer
89
+ The following example displays information about the versions for the layer named blank-java-lib
90
+
91
+ >>> client.list(layer_name='blank-java-lib')
92
+ """
93
+
94
+ def _handler(
95
+ req: "OperationRequest[capo_lambda.types.list_layer_versions_request.ListLayerVersionsRequest]",
96
+ ) -> OperationResponse[
97
+ "capo_lambda.types.list_layer_versions_response.ListLayerVersionsResponse"
98
+ ]:
99
+ import capo_lambda._operations.aws_gir_api_service.list_layer_versions
100
+
101
+ output, http_response = (
102
+ capo_lambda._operations.aws_gir_api_service.list_layer_versions.list_layer_versions(
103
+ req.options, req.input
104
+ )
105
+ )
106
+ return OperationResponse(output=output, response=http_response)
107
+
108
+ interceptors_, options_ = self._service.operation_options(config_overrides)
109
+ input_: capo_lambda.types.list_layer_versions_request.ListLayerVersionsRequest = {} # type: ignore[typeddict-item]
110
+ if compatible_runtime is not None:
111
+ input_["compatible_runtime"] = compatible_runtime
112
+ input_["layer_name"] = layer_name
113
+ if marker is not None:
114
+ input_["marker"] = marker
115
+ if max_items is not None:
116
+ input_["max_items"] = max_items
117
+ if compatible_architecture is not None:
118
+ input_["compatible_architecture"] = compatible_architecture
119
+
120
+ response = execute_pipeline(
121
+ OperationRequest(input=input_, options=options_),
122
+ handler=_handler,
123
+ interceptors=list(interceptors_),
124
+ )
125
+ return response.output
126
+
127
+ def add_layer_version_permission(
128
+ self,
129
+ layer_name: "capo_lambda.types.layer_name.LayerName",
130
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
131
+ statement_id: "capo_lambda.types.statement_id.StatementId",
132
+ action: "capo_lambda.types.layer_permission_allowed_action.LayerPermissionAllowedAction",
133
+ principal: "capo_lambda.types.layer_permission_allowed_principal.LayerPermissionAllowedPrincipal",
134
+ *,
135
+ config_overrides: Optional[LambdaClientConfig] = None,
136
+ organization_id: Optional[
137
+ "capo_lambda.types.organization_id.OrganizationId"
138
+ ] = None,
139
+ revision_id: Optional["capo_lambda.types.string.String"] = None,
140
+ ) -> "capo_lambda.types.add_layer_version_permission_response.AddLayerVersionPermissionResponse":
141
+ r"""<p>Adds permissions to the resource-based policy of a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. Use this action to grant layer usage permission to other accounts. You can grant permission to a single account, all accounts in an organization, or all Amazon Web Services accounts. </p> <p>To revoke permission, call <a>RemoveLayerVersionPermission</a> with the statement ID that you specified when you added it.</p>
142
+
143
+ Args:
144
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
145
+ version_number: <p>The version number.</p>
146
+ statement_id: <p>An identifier that distinguishes the policy from others on the same layer version.</p>
147
+ action: <p>The API action that grants access to the layer. For example, <code>lambda:GetLayerVersion</code>.</p>
148
+ principal: <p>An account ID, or <code>*</code> to grant layer usage permission to all accounts in an organization, or all Amazon Web Services accounts (if <code>organizationId</code> is not specified). For the last case, make sure that you really do want all Amazon Web Services accounts to have usage permission to this layer. </p>
149
+ organization_id: <p>With the principal set to <code>*</code>, grant permission to all accounts in the specified organization.</p>
150
+ revision_id: <p>Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a policy that has changed since you last read it.</p>
151
+
152
+ Raises:
153
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
154
+ capo_lambda.errors.policy_length_exceeded_exception.PolicyLengthExceededException: <p>The permissions policy for the resource is too large. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html\">Lambda quotas</a>.</p>
155
+ capo_lambda.errors.precondition_failed_exception.PreconditionFailedException: <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p> <ul> <li> <p> <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p> </li> <li> <p> <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p> </li> </ul>
156
+ capo_lambda.errors.resource_conflict_exception.ResourceConflictException: <p>The resource already exists, or another operation is in progress.</p>
157
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
158
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
159
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
160
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
161
+
162
+ Examples:
163
+ To add permissions to a layer version
164
+ The following example grants permission for the account 223456789012 to use version 1 of a layer named my-layer.
165
+
166
+ >>> client.add_layer_version_permission(layer_name='my-layer', version_number=1, statement_id='xaccount', action='lambda:GetLayerVersion', principal='223456789012')
167
+ """
168
+
169
+ def _handler(
170
+ req: "OperationRequest[capo_lambda.types.add_layer_version_permission_request.AddLayerVersionPermissionRequest]",
171
+ ) -> OperationResponse[
172
+ "capo_lambda.types.add_layer_version_permission_response.AddLayerVersionPermissionResponse"
173
+ ]:
174
+ import capo_lambda._operations.aws_gir_api_service.add_layer_version_permission
175
+
176
+ output, http_response = (
177
+ capo_lambda._operations.aws_gir_api_service.add_layer_version_permission.add_layer_version_permission(
178
+ req.options, req.input
179
+ )
180
+ )
181
+ return OperationResponse(output=output, response=http_response)
182
+
183
+ interceptors_, options_ = self._service.operation_options(config_overrides)
184
+ input_: capo_lambda.types.add_layer_version_permission_request.AddLayerVersionPermissionRequest = {} # type: ignore[typeddict-item]
185
+ input_["layer_name"] = layer_name
186
+ input_["version_number"] = version_number
187
+ input_["statement_id"] = statement_id
188
+ input_["action"] = action
189
+ input_["principal"] = principal
190
+ if organization_id is not None:
191
+ input_["organization_id"] = organization_id
192
+ if revision_id is not None:
193
+ input_["revision_id"] = revision_id
194
+
195
+ response = execute_pipeline(
196
+ OperationRequest(input=input_, options=options_),
197
+ handler=_handler,
198
+ interceptors=list(interceptors_),
199
+ )
200
+ return response.output
201
+
202
+ def delete_layer_version(
203
+ self,
204
+ layer_name: "capo_lambda.types.layer_name.LayerName",
205
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
206
+ *,
207
+ config_overrides: Optional[LambdaClientConfig] = None,
208
+ ) -> None:
209
+ r"""<p>Deletes a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. Deleted versions can no longer be viewed or added to functions. To avoid breaking functions, a copy of the version remains in Lambda until no functions refer to it.</p>
210
+
211
+ Args:
212
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
213
+ version_number: <p>The version number.</p>
214
+
215
+ Raises:
216
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
217
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
218
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
219
+
220
+ Examples:
221
+ To delete a version of a Lambda layer
222
+ The following example deletes version 2 of a layer named my-layer.
223
+
224
+ >>> client.delete_layer_version(layer_name='my-layer', version_number=2)
225
+ """
226
+
227
+ def _handler(
228
+ req: "OperationRequest[capo_lambda.types.delete_layer_version_request.DeleteLayerVersionRequest]",
229
+ ) -> OperationResponse[None]:
230
+ import capo_lambda._operations.aws_gir_api_service.delete_layer_version
231
+
232
+ output, http_response = (
233
+ capo_lambda._operations.aws_gir_api_service.delete_layer_version.delete_layer_version(
234
+ req.options, req.input
235
+ )
236
+ )
237
+ return OperationResponse(output=output, response=http_response)
238
+
239
+ interceptors_, options_ = self._service.operation_options(config_overrides)
240
+ input_: capo_lambda.types.delete_layer_version_request.DeleteLayerVersionRequest = {} # type: ignore[typeddict-item]
241
+ input_["layer_name"] = layer_name
242
+ input_["version_number"] = version_number
243
+
244
+ response = execute_pipeline(
245
+ OperationRequest(input=input_, options=options_),
246
+ handler=_handler,
247
+ interceptors=list(interceptors_),
248
+ )
249
+ return response.output
250
+
251
+ def get_layer_version(
252
+ self,
253
+ layer_name: "capo_lambda.types.layer_name.LayerName",
254
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
255
+ *,
256
+ config_overrides: Optional[LambdaClientConfig] = None,
257
+ ) -> "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse":
258
+ r"""<p>Returns information about a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>, with a link to download the layer archive that's valid for 10 minutes.</p>
259
+
260
+ Args:
261
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
262
+ version_number: <p>The version number.</p>
263
+
264
+ Raises:
265
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
266
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
267
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
268
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
269
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
270
+
271
+ Examples:
272
+ To get information about a Lambda layer version
273
+ The following example returns information for version 1 of a layer named my-layer.
274
+
275
+ >>> client.get_layer_version(layer_name='my-layer', version_number=1)
276
+ """
277
+
278
+ def _handler(
279
+ req: "OperationRequest[capo_lambda.types.get_layer_version_request.GetLayerVersionRequest]",
280
+ ) -> OperationResponse[
281
+ "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse"
282
+ ]:
283
+ import capo_lambda._operations.aws_gir_api_service.get_layer_version
284
+
285
+ output, http_response = (
286
+ capo_lambda._operations.aws_gir_api_service.get_layer_version.get_layer_version(
287
+ req.options, req.input
288
+ )
289
+ )
290
+ return OperationResponse(output=output, response=http_response)
291
+
292
+ interceptors_, options_ = self._service.operation_options(config_overrides)
293
+ input_: capo_lambda.types.get_layer_version_request.GetLayerVersionRequest = {} # type: ignore[typeddict-item]
294
+ input_["layer_name"] = layer_name
295
+ input_["version_number"] = version_number
296
+
297
+ response = execute_pipeline(
298
+ OperationRequest(input=input_, options=options_),
299
+ handler=_handler,
300
+ interceptors=list(interceptors_),
301
+ )
302
+ return response.output
303
+
304
+ def get_layer_version_by_arn(
305
+ self,
306
+ arn: "capo_lambda.types.layer_version_arn.LayerVersionArn",
307
+ *,
308
+ config_overrides: Optional[LambdaClientConfig] = None,
309
+ ) -> "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse":
310
+ r"""<p>Returns information about a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>, with a link to download the layer archive that's valid for 10 minutes.</p>
311
+
312
+ Args:
313
+ arn: <p>The ARN of the layer version.</p>
314
+
315
+ Raises:
316
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
317
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
318
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
319
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
320
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
321
+
322
+ Examples:
323
+ To get information about a Lambda layer version
324
+ The following example returns information about the layer version with the specified Amazon Resource Name (ARN).
325
+
326
+ >>> client.get_layer_version_by_arn(arn='arn:aws:lambda:ca-central-1:123456789012:layer:blank-python-lib:3')
327
+ """
328
+
329
+ def _handler(
330
+ req: "OperationRequest[capo_lambda.types.get_layer_version_by_arn_request.GetLayerVersionByArnRequest]",
331
+ ) -> OperationResponse[
332
+ "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse"
333
+ ]:
334
+ import capo_lambda._operations.aws_gir_api_service.get_layer_version_by_arn
335
+
336
+ output, http_response = (
337
+ capo_lambda._operations.aws_gir_api_service.get_layer_version_by_arn.get_layer_version_by_arn(
338
+ req.options, req.input
339
+ )
340
+ )
341
+ return OperationResponse(output=output, response=http_response)
342
+
343
+ interceptors_, options_ = self._service.operation_options(config_overrides)
344
+ input_: capo_lambda.types.get_layer_version_by_arn_request.GetLayerVersionByArnRequest = {} # type: ignore[typeddict-item]
345
+ input_["arn"] = arn
346
+
347
+ response = execute_pipeline(
348
+ OperationRequest(input=input_, options=options_),
349
+ handler=_handler,
350
+ interceptors=list(interceptors_),
351
+ )
352
+ return response.output
353
+
354
+ def get_layer_version_policy(
355
+ self,
356
+ layer_name: "capo_lambda.types.layer_name.LayerName",
357
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
358
+ *,
359
+ config_overrides: Optional[LambdaClientConfig] = None,
360
+ ) -> "capo_lambda.types.get_layer_version_policy_response.GetLayerVersionPolicyResponse":
361
+ r"""<p>Returns the permission policy for a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. For more information, see <a>AddLayerVersionPermission</a>.</p>
362
+
363
+ Args:
364
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
365
+ version_number: <p>The version number.</p>
366
+
367
+ Raises:
368
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
369
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
370
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
371
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
372
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
373
+ """
374
+
375
+ def _handler(
376
+ req: "OperationRequest[capo_lambda.types.get_layer_version_policy_request.GetLayerVersionPolicyRequest]",
377
+ ) -> OperationResponse[
378
+ "capo_lambda.types.get_layer_version_policy_response.GetLayerVersionPolicyResponse"
379
+ ]:
380
+ import capo_lambda._operations.aws_gir_api_service.get_layer_version_policy
381
+
382
+ output, http_response = (
383
+ capo_lambda._operations.aws_gir_api_service.get_layer_version_policy.get_layer_version_policy(
384
+ req.options, req.input
385
+ )
386
+ )
387
+ return OperationResponse(output=output, response=http_response)
388
+
389
+ interceptors_, options_ = self._service.operation_options(config_overrides)
390
+ input_: capo_lambda.types.get_layer_version_policy_request.GetLayerVersionPolicyRequest = {} # type: ignore[typeddict-item]
391
+ input_["layer_name"] = layer_name
392
+ input_["version_number"] = version_number
393
+
394
+ response = execute_pipeline(
395
+ OperationRequest(input=input_, options=options_),
396
+ handler=_handler,
397
+ interceptors=list(interceptors_),
398
+ )
399
+ return response.output
400
+
401
+ def publish_layer_version(
402
+ self,
403
+ layer_name: "capo_lambda.types.layer_name.LayerName",
404
+ content: "capo_lambda.types.layer_version_content_input.LayerVersionContentInput",
405
+ *,
406
+ config_overrides: Optional[LambdaClientConfig] = None,
407
+ description: Optional["capo_lambda.types.description.Description"] = None,
408
+ compatible_runtimes: Optional[
409
+ "capo_lambda.types.compatible_runtimes.CompatibleRuntimes"
410
+ ] = None,
411
+ license_info: Optional["capo_lambda.types.license_info.LicenseInfo"] = None,
412
+ compatible_architectures: Optional[
413
+ "capo_lambda.types.compatible_architectures.CompatibleArchitectures"
414
+ ] = None,
415
+ ) -> "capo_lambda.types.publish_layer_version_response.PublishLayerVersionResponse":
416
+ r"""<p>Creates an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a> from a ZIP archive. Each time you call <code>PublishLayerVersion</code> with the same layer name, a new version is created.</p> <p>Add layers to your function with <a>CreateFunction</a> or <a>UpdateFunctionConfiguration</a>.</p>
417
+
418
+ Args:
419
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
420
+ description: <p>The description of the version.</p>
421
+ content: <p>The function layer archive.</p>
422
+ compatible_runtimes: <p>A list of compatible <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html\">function runtimes</a>. Used for filtering with <a>ListLayers</a> and <a>ListLayerVersions</a>.</p> <p>The following list includes deprecated runtimes. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy\">Runtime deprecation policy</a>.</p>
423
+ license_info: <p>The layer's software license. It can be any of the following:</p> <ul> <li> <p>An <a href=\"https://spdx.org/licenses/\">SPDX license identifier</a>. For example, <code>MIT</code>.</p> </li> <li> <p>The URL of a license hosted on the internet. For example, <code>https://opensource.org/licenses/MIT</code>.</p> </li> <li> <p>The full text of the license.</p> </li> </ul>
424
+ compatible_architectures: <p>A list of compatible <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html\">instruction set architectures</a>.</p>
425
+
426
+ Raises:
427
+ capo_lambda.errors.code_storage_exceeded_exception.CodeStorageExceededException: <p>Your Amazon Web Services account has exceeded its maximum total code size. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html\">Lambda quotas</a>.</p>
428
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
429
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
430
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
431
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
432
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
433
+
434
+ Examples:
435
+ To create a Lambda layer version
436
+ The following example creates a new Python library layer version. The command retrieves the layer content a file named layer.zip in the specified S3 bucket.
437
+
438
+ >>> client.publish_layer_version(layer_name='my-layer', description='My Python layer', content={'S3Bucket': 'lambda-layers-us-west-2-123456789012', 'S3Key': 'layer.zip'}, compatible_runtimes=['python3.6', 'python3.7'], license_info='MIT')
439
+ """
440
+
441
+ def _handler(
442
+ req: "OperationRequest[capo_lambda.types.publish_layer_version_request.PublishLayerVersionRequest]",
443
+ ) -> OperationResponse[
444
+ "capo_lambda.types.publish_layer_version_response.PublishLayerVersionResponse"
445
+ ]:
446
+ import capo_lambda._operations.aws_gir_api_service.publish_layer_version
447
+
448
+ output, http_response = (
449
+ capo_lambda._operations.aws_gir_api_service.publish_layer_version.publish_layer_version(
450
+ req.options, req.input
451
+ )
452
+ )
453
+ return OperationResponse(output=output, response=http_response)
454
+
455
+ interceptors_, options_ = self._service.operation_options(config_overrides)
456
+ input_: capo_lambda.types.publish_layer_version_request.PublishLayerVersionRequest = {} # type: ignore[typeddict-item]
457
+ input_["layer_name"] = layer_name
458
+ if description is not None:
459
+ input_["description"] = description
460
+ input_["content"] = content
461
+ if compatible_runtimes is not None:
462
+ input_["compatible_runtimes"] = compatible_runtimes
463
+ if license_info is not None:
464
+ input_["license_info"] = license_info
465
+ if compatible_architectures is not None:
466
+ input_["compatible_architectures"] = compatible_architectures
467
+
468
+ response = execute_pipeline(
469
+ OperationRequest(input=input_, options=options_),
470
+ handler=_handler,
471
+ interceptors=list(interceptors_),
472
+ )
473
+ return response.output
474
+
475
+ def remove_layer_version_permission(
476
+ self,
477
+ layer_name: "capo_lambda.types.layer_name.LayerName",
478
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
479
+ statement_id: "capo_lambda.types.statement_id.StatementId",
480
+ *,
481
+ config_overrides: Optional[LambdaClientConfig] = None,
482
+ revision_id: Optional["capo_lambda.types.string.String"] = None,
483
+ ) -> None:
484
+ r"""<p>Removes a statement from the permissions policy for a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. For more information, see <a>AddLayerVersionPermission</a>.</p>
485
+
486
+ Args:
487
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
488
+ version_number: <p>The version number.</p>
489
+ statement_id: <p>The identifier that was specified when the statement was added.</p>
490
+ revision_id: <p>Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a policy that has changed since you last read it.</p>
491
+
492
+ Raises:
493
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
494
+ capo_lambda.errors.precondition_failed_exception.PreconditionFailedException: <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p> <ul> <li> <p> <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p> </li> <li> <p> <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p> </li> </ul>
495
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
496
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
497
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
498
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
499
+
500
+ Examples:
501
+ To delete layer-version permissions
502
+ The following example deletes permission for an account to configure a layer version.
503
+
504
+ >>> client.remove_layer_version_permission(layer_name='my-layer', version_number=1, statement_id='xaccount')
505
+ """
506
+
507
+ def _handler(
508
+ req: "OperationRequest[capo_lambda.types.remove_layer_version_permission_request.RemoveLayerVersionPermissionRequest]",
509
+ ) -> OperationResponse[None]:
510
+ import capo_lambda._operations.aws_gir_api_service.remove_layer_version_permission
511
+
512
+ output, http_response = (
513
+ capo_lambda._operations.aws_gir_api_service.remove_layer_version_permission.remove_layer_version_permission(
514
+ req.options, req.input
515
+ )
516
+ )
517
+ return OperationResponse(output=output, response=http_response)
518
+
519
+ interceptors_, options_ = self._service.operation_options(config_overrides)
520
+ input_: capo_lambda.types.remove_layer_version_permission_request.RemoveLayerVersionPermissionRequest = {} # type: ignore[typeddict-item]
521
+ input_["layer_name"] = layer_name
522
+ input_["version_number"] = version_number
523
+ input_["statement_id"] = statement_id
524
+ if revision_id is not None:
525
+ input_["revision_id"] = revision_id
526
+
527
+ response = execute_pipeline(
528
+ OperationRequest(input=input_, options=options_),
529
+ handler=_handler,
530
+ interceptors=list(interceptors_),
531
+ )
532
+ return response.output
533
+
534
+
535
+ class AsyncLayerVersion:
536
+ def __init__(self, service: AsyncLambdaClient) -> None:
537
+ self._service = service
538
+
539
+ async def list(
540
+ self,
541
+ layer_name: "capo_lambda.types.layer_name.LayerName",
542
+ *,
543
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
544
+ compatible_runtime: Optional["capo_lambda.types.runtime.Runtime"] = None,
545
+ marker: Optional["capo_lambda.types.string.String"] = None,
546
+ max_items: Optional[
547
+ "capo_lambda.types.max_layer_list_items.MaxLayerListItems"
548
+ ] = None,
549
+ compatible_architecture: Optional[
550
+ "capo_lambda.types.architecture.Architecture"
551
+ ] = None,
552
+ ) -> "capo_lambda.types.list_layer_versions_response.ListLayerVersionsResponse":
553
+ r"""<p>Lists the versions of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. Versions that have been deleted aren't listed. Specify a <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html\">runtime identifier</a> to list only versions that indicate that they're compatible with that runtime. Specify a compatible architecture to include only layer versions that are compatible with that architecture.</p>
554
+
555
+ Args:
556
+ compatible_runtime: <p>A runtime identifier.</p> <p>The following list includes deprecated runtimes. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels\">Runtime use after deprecation</a>.</p> <p>For a list of all currently supported runtimes, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported\">Supported runtimes</a>.</p>
557
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
558
+ marker: <p>A pagination token returned by a previous call.</p>
559
+ max_items: <p>The maximum number of versions to return.</p>
560
+ compatible_architecture: <p>The compatible <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html\">instruction set architecture</a>.</p>
561
+
562
+ Raises:
563
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
564
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
565
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
566
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
567
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
568
+
569
+ Examples:
570
+ To list versions of a layer
571
+ The following example displays information about the versions for the layer named blank-java-lib
572
+
573
+ >>> await client.list(layer_name='blank-java-lib')
574
+ """
575
+
576
+ async def _handler(
577
+ req: "AsyncOperationRequest[capo_lambda.types.list_layer_versions_request.ListLayerVersionsRequest]",
578
+ ) -> AsyncOperationResponse[
579
+ "capo_lambda.types.list_layer_versions_response.ListLayerVersionsResponse"
580
+ ]:
581
+ import capo_lambda._operations.aws_gir_api_service.list_layer_versions
582
+
583
+ (
584
+ output,
585
+ http_response,
586
+ ) = await capo_lambda._operations.aws_gir_api_service.list_layer_versions.async_list_layer_versions(
587
+ req.options, req.input
588
+ )
589
+ return AsyncOperationResponse(output=output, response=http_response)
590
+
591
+ interceptors_, options_ = self._service.operation_options(config_overrides)
592
+ input_: capo_lambda.types.list_layer_versions_request.ListLayerVersionsRequest = {} # type: ignore[typeddict-item]
593
+ if compatible_runtime is not None:
594
+ input_["compatible_runtime"] = compatible_runtime
595
+ input_["layer_name"] = layer_name
596
+ if marker is not None:
597
+ input_["marker"] = marker
598
+ if max_items is not None:
599
+ input_["max_items"] = max_items
600
+ if compatible_architecture is not None:
601
+ input_["compatible_architecture"] = compatible_architecture
602
+
603
+ response = await aexecute_pipeline(
604
+ AsyncOperationRequest(input=input_, options=options_),
605
+ handler=_handler,
606
+ interceptors=list(interceptors_),
607
+ )
608
+ return response.output
609
+
610
+ async def add_layer_version_permission(
611
+ self,
612
+ layer_name: "capo_lambda.types.layer_name.LayerName",
613
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
614
+ statement_id: "capo_lambda.types.statement_id.StatementId",
615
+ action: "capo_lambda.types.layer_permission_allowed_action.LayerPermissionAllowedAction",
616
+ principal: "capo_lambda.types.layer_permission_allowed_principal.LayerPermissionAllowedPrincipal",
617
+ *,
618
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
619
+ organization_id: Optional[
620
+ "capo_lambda.types.organization_id.OrganizationId"
621
+ ] = None,
622
+ revision_id: Optional["capo_lambda.types.string.String"] = None,
623
+ ) -> "capo_lambda.types.add_layer_version_permission_response.AddLayerVersionPermissionResponse":
624
+ r"""<p>Adds permissions to the resource-based policy of a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. Use this action to grant layer usage permission to other accounts. You can grant permission to a single account, all accounts in an organization, or all Amazon Web Services accounts. </p> <p>To revoke permission, call <a>RemoveLayerVersionPermission</a> with the statement ID that you specified when you added it.</p>
625
+
626
+ Args:
627
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
628
+ version_number: <p>The version number.</p>
629
+ statement_id: <p>An identifier that distinguishes the policy from others on the same layer version.</p>
630
+ action: <p>The API action that grants access to the layer. For example, <code>lambda:GetLayerVersion</code>.</p>
631
+ principal: <p>An account ID, or <code>*</code> to grant layer usage permission to all accounts in an organization, or all Amazon Web Services accounts (if <code>organizationId</code> is not specified). For the last case, make sure that you really do want all Amazon Web Services accounts to have usage permission to this layer. </p>
632
+ organization_id: <p>With the principal set to <code>*</code>, grant permission to all accounts in the specified organization.</p>
633
+ revision_id: <p>Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a policy that has changed since you last read it.</p>
634
+
635
+ Raises:
636
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
637
+ capo_lambda.errors.policy_length_exceeded_exception.PolicyLengthExceededException: <p>The permissions policy for the resource is too large. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html\">Lambda quotas</a>.</p>
638
+ capo_lambda.errors.precondition_failed_exception.PreconditionFailedException: <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p> <ul> <li> <p> <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p> </li> <li> <p> <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p> </li> </ul>
639
+ capo_lambda.errors.resource_conflict_exception.ResourceConflictException: <p>The resource already exists, or another operation is in progress.</p>
640
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
641
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
642
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
643
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
644
+
645
+ Examples:
646
+ To add permissions to a layer version
647
+ The following example grants permission for the account 223456789012 to use version 1 of a layer named my-layer.
648
+
649
+ >>> await client.add_layer_version_permission(layer_name='my-layer', version_number=1, statement_id='xaccount', action='lambda:GetLayerVersion', principal='223456789012')
650
+ """
651
+
652
+ async def _handler(
653
+ req: "AsyncOperationRequest[capo_lambda.types.add_layer_version_permission_request.AddLayerVersionPermissionRequest]",
654
+ ) -> AsyncOperationResponse[
655
+ "capo_lambda.types.add_layer_version_permission_response.AddLayerVersionPermissionResponse"
656
+ ]:
657
+ import capo_lambda._operations.aws_gir_api_service.add_layer_version_permission
658
+
659
+ (
660
+ output,
661
+ http_response,
662
+ ) = await capo_lambda._operations.aws_gir_api_service.add_layer_version_permission.async_add_layer_version_permission(
663
+ req.options, req.input
664
+ )
665
+ return AsyncOperationResponse(output=output, response=http_response)
666
+
667
+ interceptors_, options_ = self._service.operation_options(config_overrides)
668
+ input_: capo_lambda.types.add_layer_version_permission_request.AddLayerVersionPermissionRequest = {} # type: ignore[typeddict-item]
669
+ input_["layer_name"] = layer_name
670
+ input_["version_number"] = version_number
671
+ input_["statement_id"] = statement_id
672
+ input_["action"] = action
673
+ input_["principal"] = principal
674
+ if organization_id is not None:
675
+ input_["organization_id"] = organization_id
676
+ if revision_id is not None:
677
+ input_["revision_id"] = revision_id
678
+
679
+ response = await aexecute_pipeline(
680
+ AsyncOperationRequest(input=input_, options=options_),
681
+ handler=_handler,
682
+ interceptors=list(interceptors_),
683
+ )
684
+ return response.output
685
+
686
+ async def delete_layer_version(
687
+ self,
688
+ layer_name: "capo_lambda.types.layer_name.LayerName",
689
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
690
+ *,
691
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
692
+ ) -> None:
693
+ r"""<p>Deletes a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. Deleted versions can no longer be viewed or added to functions. To avoid breaking functions, a copy of the version remains in Lambda until no functions refer to it.</p>
694
+
695
+ Args:
696
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
697
+ version_number: <p>The version number.</p>
698
+
699
+ Raises:
700
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
701
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
702
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
703
+
704
+ Examples:
705
+ To delete a version of a Lambda layer
706
+ The following example deletes version 2 of a layer named my-layer.
707
+
708
+ >>> await client.delete_layer_version(layer_name='my-layer', version_number=2)
709
+ """
710
+
711
+ async def _handler(
712
+ req: "AsyncOperationRequest[capo_lambda.types.delete_layer_version_request.DeleteLayerVersionRequest]",
713
+ ) -> AsyncOperationResponse[None]:
714
+ import capo_lambda._operations.aws_gir_api_service.delete_layer_version
715
+
716
+ (
717
+ output,
718
+ http_response,
719
+ ) = await capo_lambda._operations.aws_gir_api_service.delete_layer_version.async_delete_layer_version(
720
+ req.options, req.input
721
+ )
722
+ return AsyncOperationResponse(output=output, response=http_response)
723
+
724
+ interceptors_, options_ = self._service.operation_options(config_overrides)
725
+ input_: capo_lambda.types.delete_layer_version_request.DeleteLayerVersionRequest = {} # type: ignore[typeddict-item]
726
+ input_["layer_name"] = layer_name
727
+ input_["version_number"] = version_number
728
+
729
+ response = await aexecute_pipeline(
730
+ AsyncOperationRequest(input=input_, options=options_),
731
+ handler=_handler,
732
+ interceptors=list(interceptors_),
733
+ )
734
+ return response.output
735
+
736
+ async def get_layer_version(
737
+ self,
738
+ layer_name: "capo_lambda.types.layer_name.LayerName",
739
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
740
+ *,
741
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
742
+ ) -> "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse":
743
+ r"""<p>Returns information about a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>, with a link to download the layer archive that's valid for 10 minutes.</p>
744
+
745
+ Args:
746
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
747
+ version_number: <p>The version number.</p>
748
+
749
+ Raises:
750
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
751
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
752
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
753
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
754
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
755
+
756
+ Examples:
757
+ To get information about a Lambda layer version
758
+ The following example returns information for version 1 of a layer named my-layer.
759
+
760
+ >>> await client.get_layer_version(layer_name='my-layer', version_number=1)
761
+ """
762
+
763
+ async def _handler(
764
+ req: "AsyncOperationRequest[capo_lambda.types.get_layer_version_request.GetLayerVersionRequest]",
765
+ ) -> AsyncOperationResponse[
766
+ "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse"
767
+ ]:
768
+ import capo_lambda._operations.aws_gir_api_service.get_layer_version
769
+
770
+ (
771
+ output,
772
+ http_response,
773
+ ) = await capo_lambda._operations.aws_gir_api_service.get_layer_version.async_get_layer_version(
774
+ req.options, req.input
775
+ )
776
+ return AsyncOperationResponse(output=output, response=http_response)
777
+
778
+ interceptors_, options_ = self._service.operation_options(config_overrides)
779
+ input_: capo_lambda.types.get_layer_version_request.GetLayerVersionRequest = {} # type: ignore[typeddict-item]
780
+ input_["layer_name"] = layer_name
781
+ input_["version_number"] = version_number
782
+
783
+ response = await aexecute_pipeline(
784
+ AsyncOperationRequest(input=input_, options=options_),
785
+ handler=_handler,
786
+ interceptors=list(interceptors_),
787
+ )
788
+ return response.output
789
+
790
+ async def get_layer_version_by_arn(
791
+ self,
792
+ arn: "capo_lambda.types.layer_version_arn.LayerVersionArn",
793
+ *,
794
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
795
+ ) -> "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse":
796
+ r"""<p>Returns information about a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>, with a link to download the layer archive that's valid for 10 minutes.</p>
797
+
798
+ Args:
799
+ arn: <p>The ARN of the layer version.</p>
800
+
801
+ Raises:
802
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
803
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
804
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
805
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
806
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
807
+
808
+ Examples:
809
+ To get information about a Lambda layer version
810
+ The following example returns information about the layer version with the specified Amazon Resource Name (ARN).
811
+
812
+ >>> await client.get_layer_version_by_arn(arn='arn:aws:lambda:ca-central-1:123456789012:layer:blank-python-lib:3')
813
+ """
814
+
815
+ async def _handler(
816
+ req: "AsyncOperationRequest[capo_lambda.types.get_layer_version_by_arn_request.GetLayerVersionByArnRequest]",
817
+ ) -> AsyncOperationResponse[
818
+ "capo_lambda.types.get_layer_version_response.GetLayerVersionResponse"
819
+ ]:
820
+ import capo_lambda._operations.aws_gir_api_service.get_layer_version_by_arn
821
+
822
+ (
823
+ output,
824
+ http_response,
825
+ ) = await capo_lambda._operations.aws_gir_api_service.get_layer_version_by_arn.async_get_layer_version_by_arn(
826
+ req.options, req.input
827
+ )
828
+ return AsyncOperationResponse(output=output, response=http_response)
829
+
830
+ interceptors_, options_ = self._service.operation_options(config_overrides)
831
+ input_: capo_lambda.types.get_layer_version_by_arn_request.GetLayerVersionByArnRequest = {} # type: ignore[typeddict-item]
832
+ input_["arn"] = arn
833
+
834
+ response = await aexecute_pipeline(
835
+ AsyncOperationRequest(input=input_, options=options_),
836
+ handler=_handler,
837
+ interceptors=list(interceptors_),
838
+ )
839
+ return response.output
840
+
841
+ async def get_layer_version_policy(
842
+ self,
843
+ layer_name: "capo_lambda.types.layer_name.LayerName",
844
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
845
+ *,
846
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
847
+ ) -> "capo_lambda.types.get_layer_version_policy_response.GetLayerVersionPolicyResponse":
848
+ r"""<p>Returns the permission policy for a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. For more information, see <a>AddLayerVersionPermission</a>.</p>
849
+
850
+ Args:
851
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
852
+ version_number: <p>The version number.</p>
853
+
854
+ Raises:
855
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
856
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
857
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
858
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
859
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
860
+ """
861
+
862
+ async def _handler(
863
+ req: "AsyncOperationRequest[capo_lambda.types.get_layer_version_policy_request.GetLayerVersionPolicyRequest]",
864
+ ) -> AsyncOperationResponse[
865
+ "capo_lambda.types.get_layer_version_policy_response.GetLayerVersionPolicyResponse"
866
+ ]:
867
+ import capo_lambda._operations.aws_gir_api_service.get_layer_version_policy
868
+
869
+ (
870
+ output,
871
+ http_response,
872
+ ) = await capo_lambda._operations.aws_gir_api_service.get_layer_version_policy.async_get_layer_version_policy(
873
+ req.options, req.input
874
+ )
875
+ return AsyncOperationResponse(output=output, response=http_response)
876
+
877
+ interceptors_, options_ = self._service.operation_options(config_overrides)
878
+ input_: capo_lambda.types.get_layer_version_policy_request.GetLayerVersionPolicyRequest = {} # type: ignore[typeddict-item]
879
+ input_["layer_name"] = layer_name
880
+ input_["version_number"] = version_number
881
+
882
+ response = await aexecute_pipeline(
883
+ AsyncOperationRequest(input=input_, options=options_),
884
+ handler=_handler,
885
+ interceptors=list(interceptors_),
886
+ )
887
+ return response.output
888
+
889
+ async def publish_layer_version(
890
+ self,
891
+ layer_name: "capo_lambda.types.layer_name.LayerName",
892
+ content: "capo_lambda.types.layer_version_content_input.LayerVersionContentInput",
893
+ *,
894
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
895
+ description: Optional["capo_lambda.types.description.Description"] = None,
896
+ compatible_runtimes: Optional[
897
+ "capo_lambda.types.compatible_runtimes.CompatibleRuntimes"
898
+ ] = None,
899
+ license_info: Optional["capo_lambda.types.license_info.LicenseInfo"] = None,
900
+ compatible_architectures: Optional[
901
+ "capo_lambda.types.compatible_architectures.CompatibleArchitectures"
902
+ ] = None,
903
+ ) -> "capo_lambda.types.publish_layer_version_response.PublishLayerVersionResponse":
904
+ r"""<p>Creates an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a> from a ZIP archive. Each time you call <code>PublishLayerVersion</code> with the same layer name, a new version is created.</p> <p>Add layers to your function with <a>CreateFunction</a> or <a>UpdateFunctionConfiguration</a>.</p>
905
+
906
+ Args:
907
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
908
+ description: <p>The description of the version.</p>
909
+ content: <p>The function layer archive.</p>
910
+ compatible_runtimes: <p>A list of compatible <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html\">function runtimes</a>. Used for filtering with <a>ListLayers</a> and <a>ListLayerVersions</a>.</p> <p>The following list includes deprecated runtimes. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy\">Runtime deprecation policy</a>.</p>
911
+ license_info: <p>The layer's software license. It can be any of the following:</p> <ul> <li> <p>An <a href=\"https://spdx.org/licenses/\">SPDX license identifier</a>. For example, <code>MIT</code>.</p> </li> <li> <p>The URL of a license hosted on the internet. For example, <code>https://opensource.org/licenses/MIT</code>.</p> </li> <li> <p>The full text of the license.</p> </li> </ul>
912
+ compatible_architectures: <p>A list of compatible <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html\">instruction set architectures</a>.</p>
913
+
914
+ Raises:
915
+ capo_lambda.errors.code_storage_exceeded_exception.CodeStorageExceededException: <p>Your Amazon Web Services account has exceeded its maximum total code size. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html\">Lambda quotas</a>.</p>
916
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
917
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
918
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
919
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
920
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
921
+
922
+ Examples:
923
+ To create a Lambda layer version
924
+ The following example creates a new Python library layer version. The command retrieves the layer content a file named layer.zip in the specified S3 bucket.
925
+
926
+ >>> await client.publish_layer_version(layer_name='my-layer', description='My Python layer', content={'S3Bucket': 'lambda-layers-us-west-2-123456789012', 'S3Key': 'layer.zip'}, compatible_runtimes=['python3.6', 'python3.7'], license_info='MIT')
927
+ """
928
+
929
+ async def _handler(
930
+ req: "AsyncOperationRequest[capo_lambda.types.publish_layer_version_request.PublishLayerVersionRequest]",
931
+ ) -> AsyncOperationResponse[
932
+ "capo_lambda.types.publish_layer_version_response.PublishLayerVersionResponse"
933
+ ]:
934
+ import capo_lambda._operations.aws_gir_api_service.publish_layer_version
935
+
936
+ (
937
+ output,
938
+ http_response,
939
+ ) = await capo_lambda._operations.aws_gir_api_service.publish_layer_version.async_publish_layer_version(
940
+ req.options, req.input
941
+ )
942
+ return AsyncOperationResponse(output=output, response=http_response)
943
+
944
+ interceptors_, options_ = self._service.operation_options(config_overrides)
945
+ input_: capo_lambda.types.publish_layer_version_request.PublishLayerVersionRequest = {} # type: ignore[typeddict-item]
946
+ input_["layer_name"] = layer_name
947
+ if description is not None:
948
+ input_["description"] = description
949
+ input_["content"] = content
950
+ if compatible_runtimes is not None:
951
+ input_["compatible_runtimes"] = compatible_runtimes
952
+ if license_info is not None:
953
+ input_["license_info"] = license_info
954
+ if compatible_architectures is not None:
955
+ input_["compatible_architectures"] = compatible_architectures
956
+
957
+ response = await aexecute_pipeline(
958
+ AsyncOperationRequest(input=input_, options=options_),
959
+ handler=_handler,
960
+ interceptors=list(interceptors_),
961
+ )
962
+ return response.output
963
+
964
+ async def remove_layer_version_permission(
965
+ self,
966
+ layer_name: "capo_lambda.types.layer_name.LayerName",
967
+ version_number: "capo_lambda.types.layer_version_number.LayerVersionNumber",
968
+ statement_id: "capo_lambda.types.statement_id.StatementId",
969
+ *,
970
+ config_overrides: Optional[AsyncLambdaClientConfig] = None,
971
+ revision_id: Optional["capo_lambda.types.string.String"] = None,
972
+ ) -> None:
973
+ r"""<p>Removes a statement from the permissions policy for a version of an <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html\">Lambda layer</a>. For more information, see <a>AddLayerVersionPermission</a>.</p>
974
+
975
+ Args:
976
+ layer_name: <p>The name or Amazon Resource Name (ARN) of the layer.</p>
977
+ version_number: <p>The version number.</p>
978
+ statement_id: <p>The identifier that was specified when the statement was added.</p>
979
+ revision_id: <p>Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a policy that has changed since you last read it.</p>
980
+
981
+ Raises:
982
+ capo_lambda.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One of the parameters in the request is not valid.</p>
983
+ capo_lambda.errors.precondition_failed_exception.PreconditionFailedException: <p>The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.</p> <ul> <li> <p> <b>For AddPermission and RemovePermission API operations:</b> Call <code>GetPolicy</code> to retrieve the latest RevisionId for your resource.</p> </li> <li> <p> <b>For all other API operations:</b> Call <code>GetFunction</code> or <code>GetAlias</code> to retrieve the latest RevisionId for your resource.</p> </li> </ul>
984
+ capo_lambda.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource specified in the request does not exist.</p>
985
+ capo_lambda.errors.service_exception.ServiceException: <p>The Lambda service encountered an internal error.</p>
986
+ capo_lambda.errors.too_many_requests_exception.TooManyRequestsException: <p>The request throughput limit was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests\">Lambda quotas</a>.</p>
987
+ capo_lambda.errors.UnknownServiceError: The service returned an error code this client does not model.
988
+
989
+ Examples:
990
+ To delete layer-version permissions
991
+ The following example deletes permission for an account to configure a layer version.
992
+
993
+ >>> await client.remove_layer_version_permission(layer_name='my-layer', version_number=1, statement_id='xaccount')
994
+ """
995
+
996
+ async def _handler(
997
+ req: "AsyncOperationRequest[capo_lambda.types.remove_layer_version_permission_request.RemoveLayerVersionPermissionRequest]",
998
+ ) -> AsyncOperationResponse[None]:
999
+ import capo_lambda._operations.aws_gir_api_service.remove_layer_version_permission
1000
+
1001
+ (
1002
+ output,
1003
+ http_response,
1004
+ ) = await capo_lambda._operations.aws_gir_api_service.remove_layer_version_permission.async_remove_layer_version_permission(
1005
+ req.options, req.input
1006
+ )
1007
+ return AsyncOperationResponse(output=output, response=http_response)
1008
+
1009
+ interceptors_, options_ = self._service.operation_options(config_overrides)
1010
+ input_: capo_lambda.types.remove_layer_version_permission_request.RemoveLayerVersionPermissionRequest = {} # type: ignore[typeddict-item]
1011
+ input_["layer_name"] = layer_name
1012
+ input_["version_number"] = version_number
1013
+ input_["statement_id"] = statement_id
1014
+ if revision_id is not None:
1015
+ input_["revision_id"] = revision_id
1016
+
1017
+ response = await aexecute_pipeline(
1018
+ AsyncOperationRequest(input=input_, options=options_),
1019
+ handler=_handler,
1020
+ interceptors=list(interceptors_),
1021
+ )
1022
+ return response.output